2017年计算机二级C语言对C语言的深入探讨知识点
引导语:它的应用范围广泛,具备很强的数据处理能力。以下是本站小编分享给大家的2017年计算机二级C语言对C语言的深入探讨知识点,欢迎阅读!
【考点1】编译预处理
凡以#开头的这一行,都是编译预处理命令行,编译预处理不加分号,不占运行时间。宏替换仅是简单的文本替换,如#define f(x) (x)*(x)和#define f(x) x*x替换f(2+2)时就有区别,前者展开为(2+2)*(2+2),后者为2+2*2+2。
如果源文件f2.c中有#include"f1.c"可以理解为把源文件f1.c原样包含到f2.c中,使f1.c和f2.c融合到一起成为一个C程序编译。所以一个C程序必有主函数,但一个C源文件未必有主函数。
【考点2】标识符作用域
局部变量是在函数内或复合语句内定义的变量,作用域为定义它的函数内。局部变量有三种类型:自动auto,寄存器register和静态static。
自动变量随着函数的使用与否创建消失;寄存器变量分配在cpu中,没有内存地址;静态变量占用固定存储单元,在程序执行过程不释放,直到程序运行结束。
全局变量是在函数外定义的'变量,作用域从定义它的位置到整个源文件结束为止,生存期为整个程序运行期间。全局变量都是静态变量。
【考点3】动态存储分配
malloc(size)用来创建size个字节的连续存储空间,返回值类型为void *型。malloc函数常用于动态创建链表结点,如int *p; p=(int *)malloc(sizeof(int));。
calloc(n,size)创建n个同一类型的连续存储空间,可以理解为n个malloc。
int *p; p=(int *) calloc (10,sizeof(int));。p指向首地址。
free(p)释放动态分配的存储单元。
【考点4】main函数的参数
还有main(int argc,char **argv) {}
这种含有参数的题目,是很呆板的题目。第一个参数是表示输入的字符串的数目,第二个参数是指向存放的字符串。
【考点5】函数指针
函数指针的用法(*f)()记住一个例子:
int add(int x, int y)
{....}
main()
{ int (*f)();
f=add;
}
赋值之后:合法的调用形式为
1、add(2,3);
2、f(2,3);
3、(*f)(2,3);
-
直接插入排序(C语言实现)
直接插入排序方法:仅有一个记录的表总是有序的,因此,对于有n个记录的表,可以从第二个记录开始直到第n个记录逐个有序的向有序表中进行插入操作,从而得到n个记录按关键字有序的表。下面一起跟着小编学习一下吧!实现一个直接插入排序的`C语言函数,要求对要排序的元素按...
-
2017上半年计算机二级C语言考前模拟试题
为了帮助大家提高计算机考试成绩,今天本站小编特地为大家收集了以下2017上半年计算机二级C语言考前模拟试题,欢迎学习!一、程序填空题给定程序中,函数fun的功能是:把形参S所指字符串中最右边的n个字符复制到形参t所指字符数组中,形成一个新串。若s所指字符串的长度...
-
C语言转义字符和格式控制符参考
导语:字符型常量所表示的值是字符型变量所能包含的值。我们可以用ASCII表达式来表示一个字符型常量,或者用单引号内加反斜杠表示转义字符。下面是C语言转义字符和格式控制符参考,欢迎学习:转义字符参考:a:蜂鸣,响铃:回退:向后退一格f:换页:换行,光标到下行行首:回车,光...
-
C语言程序改错辅导
一个讯息从地球这一端到另一端只需.秒,而一个观念从脑外传到脑里却需要一年,三年甚至十五年。以下是小编为大家搜索整理的C语言程序改错辅导,希望能给大家带来帮助!更多精彩内容请及时关注我们应届毕业生考试网!在考生文件夹下,给定程序MODI.C的功能是:求二维数组a...