【重新学习C语言】起步篇

1 #include <stdio.h>
2 
3 int main()
4 {
5     printf("Hello, World!\n");
6     return 0;
7 }
1 #include <stdio.h>
2 
3 int main(void)
4 {
5     printf("Hello, World!\n");
6     return 0;
7 }

上面两段代码有什么区别?

main函数参数表不一样,第一个什么也没有,第二个有个void。

ANSI C中,如果声明空参数表,则必须使用关键字void进行显式声明。但为了和老版本的C语言程序兼容,ANSI C语言把空参数表看成老版本的C语言的声明方式,并且对参数表不再进行任何检查。

 

=======================分割线=======================

 

以上环境:win7 64位,VS2013。

 

====================分割线====================

 

默认情况下,外部变量和静态变量将被初始化为0。

未经显式初始化的自动变量的值为未定义值(即无效值)。

const限定符指定变量的值不能被修改,对数组而言,const限定符指定数组的所有元素的值都不能被修改。

 

===================分割线================

 

逻辑运算符&&与||有一些较为特殊的属性。由&&与||链接的表达式按从左往右的顺序进行求值,并且,在知道结果值为真或假后立即停止计算。

逻辑非运算符!的作用将非0操作数转换为0,将操作数0转换为1。

 

 

==================WTF=========================

 

posted @ 2015-11-08 23:53  flyfly121  阅读(182)  评论(0编辑  收藏  举报