查看文章 |
一些关于C语言不得不说的东西
2008年05月31日 星期六 15:44
最近看The C Puzzle Book,发现里面有些东西很不错,可以提高一下写C程序时的态度,使我们能够更为小心谨慎一些。所以抄录一些分享给大家,当然也希望能对你有所帮助。 不过此处需首先说明一点,文中关于C语言的程序例子只是用来说明一些东西,考验一下你的C语言程度。切不可将其当作C语言典范程序,随处使用,否则后患无穷。 首先来看第一例,如下图:
注意C语言编译器的“大嘴”:构成操作符的字符个数越多越好。 接下来我们来看第二例,源程序如下图所示:
此例主要注意一下宏定义中的#号用法,如源程序中注释所示。程序的输出结果如下:
接着来看第三例,源程序如下图:
本例主要是关于运算符优先级以及C语言中语句的副作用的问题,输出结果如下:
下面是第四例,首先还是来看源程序,如下图:
这个例子是关于C语言中||和&&操作符的短路效应问题。需要注意源程序中注释的那句话,输出结果如下:
接着来看第五例,源程序如下图:
程序的输出结果如下:
接着看第六例,和第五例有些类似,源程序如下图所示:
程序的输出结果如下图所示:
上面的第五例和第六例涉及到的知识大体相同,都是关于类型转换的问题。在C语言中不提倡使用隐式转换,即使必须使用,也要小心地使用类型转换操作符进行明确地转换。 接着是第七例,源程序如下图所示:
程序输出结果如下:
然后看第八例,源程序如下:
程序输出结果如下: |
最近读者:
















