C 陷阱与缺陷 —— Chapter one 词法陷阱

not equal

= not equal to ==

= 是赋值 运算

== 是比较是否相等

& 不同于 &&

& 是按位与

&& 是逻辑与

| 不同于 ||

| 是按位或

|| 是逻辑或

词法贪心法

程序将程序分解为符号遵循如下逻辑:从左到右读取一个能够最初一个有意义符号的最长的字符串作为一个符号,其中的字符串不能含有空格。

y = x/*p /* p 指向除数 */; 将被识别为 y=x; /*p 别识别为注释。

改进:y = x / *p; y = x/(*p);

整型常量

整型常量的第一个数字是 0 则这个数是八进制数。

字符与字符串

单引号字符代表一个整数,查找 ASIIC 码表找对应的八进制和十进制数值。

双引号字符串,代表一个一个无名数组起始字符的指针,该数组被双引号之间的字符和一个额外的二进制为 0 的字符 '\0' 初始化。

printf("Hello world\n"); 与 char hello\[\] = {'H','e','l','l','o',' ','w','o','r','l','d','\n',0}; printf(hello); 等效。

相关推荐
zbyyd11 分钟前
Linux 多线程:互斥锁 & 信号量
linux·c语言·开发语言·网络
wuyk55520 分钟前
从零吃透Modbus通信|第3章:STM32 Modbus RTU主机
服务器·开发语言·网络·数据结构·stm32·单片机·嵌入式硬件
one3121 小时前
高精度MEMS电容式倾角传感器:原理、结构与Python三维可视化
开发语言·python
程序员小八7771 小时前
Go 语言特性
开发语言·后端·golang
水饺编程2 小时前
第5章,[Win32 章节] :绘图模式
c语言·c++·windows·visual studio
INGNIGHT2 小时前
1908 · 布尔表达式求值(stack单调栈&dfs)
开发语言·c++·算法
এ慕ོ冬℘゜3 小时前
深入理解浏览器全屏 API:从 requestFullscreen 到全屏实战
开发语言·html
七夜zippoe4 小时前
DolphinDB 高可用部署实战:从容灾设计到故障自动转移
开发语言·python·高可用·容灾·dolphindb
不会就选b4 小时前
Linux之线程池(三)
linux·开发语言
棉晗榜4 小时前
C# HttpClient配置具有tls指纹发起跟浏览器一样的请求解决反爬虫防护
开发语言·爬虫·c#