![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
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 · 483 阅读 · 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 · 263 阅读 · 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 · 654 阅读 · 5 评论 -
C经典书籍笔记——c陷阱与缺陷②(语法陷阱之函数声明)
一、前言 二、理解函数声明 1.问题思考 ((void(*)())0)(); 如果你还不能轻松解决,请看下面的细细分解( • ̀ω•́ )✧ 构造这种表达式的基本规则:按照使用的方式来声明 2.什么是声明 声明由类型和声明符组成 例1、 float f,g; 类型:float 声明符:f,g 声明:当对其求值的时候,表达式f,g的类型为浮点数类型 ...原创 2021-09-04 13:00:32 · 318 阅读 · 12 评论 -
C经典书籍笔记——C缺陷与陷阱①(词法陷阱)
一、前言 二、经典错误呈现 1.==不同于=原创 2021-09-03 14:52:04 · 603 阅读 · 20 评论