#include//#1 int mian(void) //#2 { //#3 printf("Hello World"); //#4 return 0; //#5 } //#6
说实话,我完全不明白“Hello World”这俩单词为啥有这么大的影响力。听说过的所有计算机语言,几乎都是用它入门的。
二、C程序结构简述借助以上程序段,简单描述一下C程序的主要构成
1、预处理指令预处理指令以#开头,在编译器开始编译程序之前执行,对程序做一些准备工作,所以叫预处理。
#include
这条预处理指令的意思相当明显,include——包含,即,将
那么,stdio.h是什么呢?
它是一个位于标准函数库中的文件。
因为它位于整段程序的最上方,也就是“头部”,所以被称为头文件。
stdio是standard input/output的缩写,意为:标准输入/输出;后缀h,就是head的意思。所以这个文件的全称是:标准输入/输出头文件。
<>,这个符号表示的是,被包含其中的stdio.h是位于函数库中的,是编译器提供的。
C语言拥有自己的函数库,包含着许多函数,由编译器提供。其中的函数可以被分为两类:
1)一些C语言标准规定的函数,被称为标准库函数。
2)还有一些编译器提供的有特定用途的库函数。这些函数不属于C标准。
当然,编程者也可以自定义头文件,但要用双引号来包含。
至此,这条预处理指令的完整含义就明了了:将stdio.h的内容全部引入至此条指令所在的行。
2、主函数函数,是C语言的构造块,一个C程序,可以包含多个函数。
但需要注意的是:所有的C程序,必须有且只能有一个主函数,结构如下:
int main(void)
{
return 0;
}
主函数的名字是定死的,就叫main,不允许更改。
main()是C程序的入/出口。C程序从它的第一行开始执行,到最后一行结束。
int是C语言中的一种基本数据类型,被称为整型,即此类型的数据都是整数。
它位于主函数名之前,表达的含义是:这个函数是有返回值的,并且返回值的数据类型是整型
那么,返回值又是啥?
以我目前的理解,返回值的含义即是:向其它位置输出数据
跟在main之后的圆括号()表示main是一个函数。
位于圆括号中的void代表这个函数没有参数。至于位于函数名后的参数的作用,我暂时将它理解为:用于接收外部传入数据的容器。没有参数,即代表这个函数不需要从其他地方接收数据。
左花括号,代表着函数的起始位置,与结束位置右花括号呼应,缺一不可。
return,字面翻译,返回。到这儿,就和位于函数名之前的返回值类型呼应上了。返回值类型的作用,就是规定return返回的数据类型。因为main前面是int,所以return之后的值必须是整数。
可以将这个结构看作是一种主函数的固定写法,表示:如果这个C程序执行成功,则向操作系统(据说更准确的说法叫父进程)返回一个0。
到这儿,这个主函数的意义也算是大体清晰了。
至于返回值类型、函数名后的参数和return,在被用于其它函数中时,作用都一样····应该是吧。
3、语句语句是C语言的基本构建模块,每条语句都以分号结尾。根据CXI标准,在C语言中,一共有6种语句:
1)标号语句;
2)复合语句;
3)表达式语句;
4)分支语句(选择语句);
5)迭代语句(循环语句);
6)跳转语句;
printf("Hello World");
上面这条语句是一个函数调用。
printf()函数是位于C标准库中的一个标准输出函数,作用是在屏幕上打印,与程序最上方的的标准输入/输出头文件相呼应。
这里只是调用函数名以实现功能:在屏幕上打印Hello World。函数的完全体被保存在stdio.h中。
因为本程序需要使用printf(),所以才需要引入stdio.h。所以头文件也不是随便引的。
函数调用属于表达式语句,圆括号()左边的函数名是运算对象
4、注释注释,多用于注解程序、函数、语句的功能。
目前,C语言有2种注释形式
printf("Hello World!"); //#1
//#1
printf("Hello World!"); //#2
1)双斜杠单行注释:以双斜杠//开头,双斜杠之后的所有内容都会被当作注释内容,默认到行末结束。双斜杠的注释作用只限于一行。
上面的程序段中,#1和#2都是有效的语句,可以正常输出。
2)多行注释:以结束,两组符号中间的所有内容都被视为注释内容。
上面的程序段中,#3下方的语句也被视为注释内容,是一条无效语句,不会被执行
推荐使用双斜杠注释,因为方便;
在使用多行注释时,可以将注释符号写的醒目一点,默认为一种写程序的风格,以防止忘记注释的结束标记,以至于影响整个程序的运行。如下:
至此,这个神级入门程序粗解完毕!!



