c语言深度剖析-第3部分
按键盘上方向键 ← 或 → 可快速上下翻页,按键盘上的 Enter 键可回到本书目录页,按键盘上方向键 ↑ 可回到本页顶部!
————未阅读完?加入书签已便下次继续阅读!
C)写法:这个写法才是正确的,但样子比较古怪。为什么要这么写呢?是怕漏写一个
“=”号:if(p=NULL),这个表达式编译器当然会认为是正确的,但却不是你要表达的意思。
所以,非常推荐这种写法。
1。6。4,else到底与哪个if配对呢?
else常常与if语句配对,但要注意书写规范,看下面例子:
if(0x)
if(0y)error();
else{
//programcode
}
这个else到底与谁匹配呢?让人迷糊,尤其是初学者。还好,C语言有这样的规定:else
始终与同一括号内最近的未匹配的if语句结合。虽然老手可以区分出来,但这样的代码谁
都会头疼的,任何时候都别偷这种懒。关于程序中的分界符‘{’和‘}’,建议如下:
【建议1…16】程序中的分界符‘{’和‘}’对齐风格如下:
注意下表中代码的缩进一般为4个字符,但不要使用Tab键,因为不同的编辑器Tab键定义
的空格数量不一样,别的编辑器打开Tab键缩进的代码可能会一片混乱。
提倡的的风格不提倡的风格
voidFunction(intx)
{
//programcode
}
voidFunction(intx){
//programcode
}
if(condition)
{
//programcode
}
if(condition){
//programcode
}else{
//programcode
1。6。5,if语句后面的分号
关于if…else语句还有一个容易出错的地方就是与空语句的连用。看下面的例子:
if(NULL!=p);
fun();
这里的fun()函数并不是在NULL!=p的时候被调用,而是任何时候都会被调用。问题就出
在if语句后面的分号上。在C语言中,分号预示着一条语句的结尾,但是并不是每条C语
言语句都需要分号作为结束标志。if语句的后面并不需要分号,但如果你不小心写了个分号,
编译器并不会提示出错。因为编译器会把这个分号解析成一条空语句。也就是上面的代码实
际等效于:
if(NULL!=p)
{
else
{
//programcode
}
}
或:
if(condition)
//programcode
else
//programcode
或:
if(width