C的各种要注意的点

mac2026-05-03  23

1. %后面跟数字

用在printf

2. swtich 中 case 后面跟着的是 : 而不是 ;

case: break;

3. scanf 括号中的变量前要加上 & 取地址符

scanf("%d,&c",&sum,&zifu);

4. cin 后面不用 endl; 直接 ;

cin>>X>>endl; //错误例子 cin>>X;

5. scanf

如果在“格式控制”字符串中除了格式说明以外还有其它字符,则在输入数据时应输入与这些字符相同的字符。例如: scanf(“%d ,%d”,&a,&b); 输入时应输入:3 , 4 3与4之间的逗号应与scanf函数中的“格式控制”中的逗号相对应,输入其它符号是不对的。

在用“%c”格式输入字符时,空格字符和转义字符都作为有效字符输入。 scanf(“%c%c%c”,&c1,&c2,&c3); 如输入:a b c 。字符’a’赋给c1,字符(空格)’ ’赋给c2,字符’b’ 赋给c3。


6. 形参的默认值

当一个函数既有声明又有定义时,形参的默认值必须在声明中指定,而不能在定义中指定。只有当函数没有声明时,才可以在函数定义中指定形参的默认值。 int add(int a,int b=2,int c=3); //此时的默认值写在开头的声明中 main(){ ... ... } int add(int a,int b,int c){ //这里的形参后面没有默认值! cout<<"a= "<<a<<" b= "<<b<<" c= "<<c<<endl; return (a+b+c); } int add(int a,int b = 2,int c = 3){ //此时的默认值可以写在定义中 cout<<"a= "<<a<<" b= "<<b<<" c= "<<c<<endl; return (a+b+c); } main(){ ... ... }

7. for语句格式

for(i=10;i<1000;i++){ } 括号中的分隔符号是 ; ! ! ! !

8. printf scanf 的 %X

%d整数%f浮点数(单双精度)%c单个字符%s字符串%ld长整型long

9. 中文占据两个字符

所以应该用字符串而不能用char定义,不然会无法显示

10. 非零即真,零即假

非零true0false

11. 字符以\0结尾

也就是char = ‘a’; 虽然表面只有一个字符,但是实际上占了两个字符的位置数组有关于这个的坑
最新回复(0)