
c经典书籍笔记
文章平均质量分 67
罅隙`
Gitee搜索“Hello Cpp Engineer”,所有的学习笔记分享给大家
展开
-
C经典书籍笔记——C陷阱与缺陷③(语意陷阱)
一、前言二、字符指针结论一:复制指针并不会复制指针所指向的内容。两个指针所指向位置相同,实际为同一个指针。结论而:开辟两个数组,即使两个数组内容相同,地址也绝不相同。三、边界计算与不对称边界1.经典错误①int main(){ int i = 0; int arr[10] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 0 }; for (i = 0; i < 13; i++) { arr[i] = 0; printf("haha".原创 2021-09-08 13:58:57 · 518 阅读 · 35 评论 -
C经典书籍笔记——C陷阱与缺陷②(Switch+‘‘悬挂‘‘else)
目录 一、switch的“顺序执行”1.缺点2.优点案例1.案例2.二、悬挂else一、switch的“顺序执行”1.缺点看以下代码:switch(colour){case 1:printf("red");case 2:printf("yellow");case 3:printf("blue");}若colour的值为2,很显然结果为yellowblue,正是因为switch语句按顺序依次执行case内容。程序员在设计代码时忘...原创 2021-09-07 13:46:11 · 303 阅读 · 7 评论 -
C经典书籍笔记——C陷阱与缺陷②(语法陷阱之优先级)
目录一、错误案列二、优先级规律1.优先级表2.优先级总结一、错误案列1.flag的二进制表达式中只有一个1,现在判断flags二进制形式在flag为1的那一位上是否也为1:if(flag & flags !=0);2.将getc函数的返回值赋给c并判断是否为EOF:while(c=getc(in)!=EOF);3.类似2的问题再复杂些:if(t=BTYPE(pt1->aty)==start || t==UNION);以上都是有优先...原创 2021-09-05 13:31:24 · 735 阅读 · 5 评论 -
C经典书籍笔记——c陷阱与缺陷②(语法陷阱之函数声明)
一、前言二、理解函数声明1.问题思考((void(*)())0)();如果你还不能轻松解决,请看下面的细细分解( • ̀ω•́ )✧构造这种表达式的基本规则:按照使用的方式来声明2.什么是声明声明由类型和声明符组成例1、float f,g;类型:float声明符:f,g声明:当对其求值的时候,表达式f,g的类型为浮点数类型...原创 2021-09-04 13:00:32 · 360 阅读 · 12 评论 -
C经典书籍笔记——C缺陷与陷阱①(词法陷阱)
一、前言二、经典错误呈现1.==不同于=原创 2021-09-03 14:52:04 · 646 阅读 · 20 评论