最近在研究<C语言的陷阱与缺陷>,其中说的好有道理!大家都来看下呀!
例:"悬挂"else引发的问题
if(x==0)
if(y==0)error();
else{
z=x+y;
f(&z);
}
这段代码本意是判x的0和1值执行两种动作,x=0和y=0同时成立才调用error()程序;但这段代码和编者的本意相去太远了,else总和最近的if配对,程序就变成了另一种表达了!
if(x==0)
{
if(y==0)error();
else{
z=x+y;
f(&z);}
}
很有意思!这样的失误我想以后记忆会很深刻
我要赚赏金打赏帖 |
|
|---|---|
| 一种有效完成脚本程序测试的方法被打赏¥28元 | |
| WorkBuddy搭配SolidCraft给开发板做两件式外壳被打赏¥33元 | |
| 开箱一块k230被打赏¥33元 | |
| 【瑞萨RA8D1测评】RA8D1+lwIP网络验证与TCPOTA的实验记录被打赏¥33元 | |
| 28BYJ-48机械臂实现人脸跟随被打赏¥24元 | |
| 基于RK3506B的片温识读功能的实现被打赏¥25元 | |
| 【瑞萨RA8D1测评】基于FreeRTOS的lvgl移植教程被打赏¥29元 | |
| 电子价签墨水屏开发被打赏¥35元 | |
| 【Ozone】RTT 打印终端使用被打赏¥29元 | |
| BMS保护板绝缘检测功能-不平衡电桥技术绝缘电阻检测设计与实现被打赏¥34元 | |
我要赚赏金
