1、清屏函数clrscr(), 这个函数在TC 编译器中是可以使用的,但在调用的时候要包含头文件 #include“comio.h”。在VC编译器中,不支持使用,如果在VC中清屏,可以选择使用函数system(“cls”)
2、在定义数组变量的过程中,数组中括号内的值必须是常量,而不能是变量,这是因为计算机要根据这个常量为数组分配内存储空间。
3、在标准输入输出流中,%*d表示读取输入流之后的一个字符,并丢弃。
eg: scanf(“%d%*c%d”,&a,&b);
输入了三个变量,中间一个输入量杯丢弃,第一个赋值给a,第三个赋值给b。这就是* 的作用,是用来吸收字符的。
4、变量只能是由字母。数字和下划线三种类型字符组成,区分大小写。
5、强制类型转换;
eg: (int) x; (int) (x+y);
6、关于 sancf("%d%d",&a,&b); scanf标准输入返回的数据是输入数据与格式字符串匹配的次数
while(scanf("%d%d",&a,&b)!=EOF) 这是指在dos系统中的一个输入控制循环。EOF表示一个文件结束流,以Ctrl+Z结束。
7、关于static修饰变量
A、修饰全局变量(静态全局变量):从定义处开始调用,在文件结尾处失效。
B、修饰局部变量(静态局部变量):只在定义的函数体内使用,但是因为static修饰的变量总是存放于内存静态区,所以记事这个函数运行结束,这个变量也不会被销毁,下次调用的时候仍能使用。
C、static修饰函数(静态函数):当static用来修饰函数时,static并不是指存储方式,而是指函数的作用域仅限于本文件中,指定函数为内部函数。
8、定义指针的时候,一定要初始化,一般写作:int *p=NULL;这是为了给定一个指针地址,注意不是指向的地址,而是指针变量存放的地址,防止溢出。
9、关于switch和case语句:case后面只能是整形或字符型的常量或者常量表达式。
10、关于break和continue:
break表示终止本层循环,执行下一层循环
continue标示终止本次循环
11、关于void,它的真正作用在于:
A:对函数返回的限定
B:对函数参数的限定
12、const修饰的变量为只读变量,不可对它进行操作,又称为静态变量,当const用来修饰指针时,要格外的注意,有以下区分:
A: const int *p; //p可变,p指向的对象不可变
B:int const *p; //p可变,p指向的对象不可变
C:int * const p //p不可变,p指向的对象不可变
D:const int * const p; //p和p指向的对象都不可变
记忆的时候有个技巧,可以看const右边是p还是*p
13、关于int *p=NULL和*p=NULL的区别:
A:int *p=NULL; 这是指定义了一个指针变量p,它是整形的,而且在定义时对p进行了初始化,p的初始内存值为NULL,也就是0x00000000,但是指针p的指向值不清楚,也就是说*p是未知的
B:int *p; *p=NULL; 这是指定义了一个指针变量,它的指向的内存赋值为NULL,也就是说*p就是NULL,但是指针变量p的内存是不清楚的,可能是一个非法变量p的内存是不清楚的,可能是一个非法的地址。