- 论坛徽章:
- 0
|
1、 printf (“k=%o;k=%d;k=%x”,k,k,k);
/*其中字母o表示八进制;字母d表示十进制;字母x表示十六进制*/
2、 printf ("k=%d;k=%u;\n",k,k);
/*其中u表示无符号整形*/
3、%d /*十进制类型*/
%f /*实数类型*/
%c /*字符类型*/
%o/*八进制类型*/
%x /*十六进制类型*/
%s /*字符串类型*/
%u /*无符号整型*/
%e/*以标准指数形式输出*/
e-03:其中e占一位,指数符号占一位,指数占2位,共计11位
%g/*让系统根据数值的大小,自动选择%f或%e格式、且不输出无意义的零*/
3、 格式字符x、e、g可以用小写字母,也可以用大写字母。使用大写字母时,输出数据中
包含的字母也大写。除了x、e、g格式字符外,其它格式字符必须用小写字母。
4、 赋值抑制字符*
表示本输入项对应的数据读入后,不赋给相应的变量(该变量由下一个格式指示符输入)。
例如,scanf("%2d%*2d%3d",&num1,&num2);
printf("num1=%d,num2=%d\n",num1,num2);
假设输入“123456789”,则系统将读取“12”并赋值给num1;读取“34”、但舍弃掉(“*”的作用);读取“567”并赋值给num2。所以,printf()函数的输出结果为:num1=12,num2=567。
5、 类型修饰符──F、N、h、l。
其含义与printf()中的一样,分别为远指针、近指针、短整型和长整型。
6、 使用格式说明符“%c”输入单个字符时,空格和转 义字符均作为有效字符被输入。
例如,scanf("%c%c%c",&ch1,&ch2,&ch3);
printf("ch1=%c,ch2=%c,ch3=%c\n",ch1,ch2,ch3);
假设输入:A B C↙,则系统将字母'A'赋值给ch1,空格' '赋值给ch2,字母'B'赋值给ch3。
7、 对于自动型数组,也可在定义时初始化,如果不初始化,则会出现莫名其妙的数据;对于静态或全局数组,如果不进行初始化,则系统自动将其初始化为0.
8、 对于数据的引用,要特别注意下标的越界,因为即使越界,系统也不会报错.
9、 在数组定义时,如果在定义时赋全部初值的话,只能缺省第一个方括号中的值,不能缺省其它方括号的值;否则不能缺省所有方括号中的值.
10、 不能用指针来指向表达式或常量和寄存器变量。指针通常占用四个字节。
11、 单个字符的地址不能用单个变量来表示,必须用“&变量”来表示。
12、 不能用auto类型变量的地址去初始化一个static或全局变量类型的d指针。 |
|