c语言中注意细节

来源:互联网 发布:java脚本返回上一页 编辑:程序博客网 时间:2024/06/10 02:36

c语言中易忘易忽略知识点

逻辑运算符 中存在着局部短路的现象

1.&&  1&&2 与运算表示的是同真则真 有一假则为假 如果1是假 则2不做判断

2.|| 或运算表示的是一真则真 同时为假才为假 如果 1 || 2 中1是真 则2 不做判断

switch 语句中遇到 break才跳出循环 不要忘记写break

对于字符输入的时候 注意多余的字符 getchar();可用来接受缓存区中的一个字符 也可以用 rewind(stdin) 清空缓存

3. 随机函数 arc4random() 对[x ,y]获取随机数 arc4random()%(y-x+1)+x;

4 .%s遇到 '\0'才停止,数组不要差生越界的情况

5. char a[6] = {'a', 'p', 'p', 'l', 'e','\0'};记得加上'\0' 若是字符串 则自动加上'\0' char a[6] = "apple";

6. strlen计算长度的时候遇到'\0'就结束并且'\0'不计入其中

string s[] = "apple"; 的元素个数是6 ,但是长度是5, 字符串后面自动加上'\0', 但是长度计算的时候没有把'\0'计入在内

7.注意:凡是涉及到对字符串的比较和赋值不能使用 > <或者=这些运算符 而是使用 strcmp(字符串1,字符串2); strcpy(字符串1,字符串2)这些字符串的函数,计算长度就用 strlen;在结构体中也要注意要使用strcpy(student.name, "lili");

8.char *p = "ios";

*p = 'a'//这是错的,指向常量区地址,修改的是常量区的地址,这是不允许的, 会发生崩溃的情况

9.在内存分配的时候如果计算字符串的长度,按照字符串的长度分配内存的时候,记住在计算字符串长度的时候没有加上'\0'所以在使用函数计算长度记得要加1.

10.字符串赋值的时候注意最后的'\0'要加上







0 0