经典的 Hello, World!
学习程序设计语言的一个重要途径就是使用它编写程序。如果一开始就尝试构建一个复杂的程序,并由此详尽的介绍语言的各种特性,这当中诸多的细节与概念,会使许多人望而生畏。我们从经典的 “Hello, World!” 开始,叩开C语言编程的大门。
创建项目
我们建立一个名为 HelloWorld 的项目,并输入以下代码。
#include <stdio.h>
int main()
{
// 使用printf函数输出文本
printf("Hello, World!");
return 0;
}
程序剖析
#include <stdio.h>
以#号开头的这行文本是一条预处理指令,每条预处理指令必须占据单独的一个文本行。这里使用#include指令,包含一个名为stdio.h的文件。后缀为.h的文件称为头文件,一个头文件好比一张说明书,编译器通过对它的解析,保证被编译的程序在语法上的正确性。这里,头文件stdio.h为后面使用的printf函数提供了相关信息。
int main()
这行代码引入一个名为main的函数。int表示函数返回一个整数值,返回值用于指示函数执行任务后的状态;一对圆括号称为函数调用符,调用可以理解为使函数发生作用。函数是C程序的基本模块。
在C语言中,main是一个特殊的函数名,每个C程序都从main函数的起点开始执行,这意味着每个程序都必须在某个位置包含一个且仅一个main函数。
接下来是一个左花括号号,表示main函数体的开始。
{
}
跳过中间的部分,一直到右大括号,这表示函数体的结束。
// 使用printf函数输出文本
从双斜杠开始的文本称为注释,此注释一直到行尾结束。注释用于对代码起注解作用,它不是有效的代码。
printf("Hello, World!");
这是main函数中的第一条语句。printf也是一个函数,它相关的说明信息包含在stdio.h头文件中,这就是程序一开始使用#include指令包含它的原因。printf函数接受一个由双引号括起来的字符串作为其参数,并将这个字符串打印到屏幕上。当然,这里的打印不是指打印到打印机,而是指输出到屏幕上。在代码的末尾,有一个分号,在C语言中,分号代表一条语句的结束。
return 0;
return语句表示函数运行完成;返回一个0值,代表函数执行期间没有发生任何错误。最后的右大括号处,表示函数体结束。由于main函数是C程序的主函数,主函数体结束后,程序就顺其自然的退出了。
运行程序
现在尝试编译并运行一下程序,如果没有发生任何输入错误,则可以在屏幕上看到 Hello, World! 这行文本,同时你也会发现,注释并没有被输出到屏幕上。注意:如图所示的后两行输出,是开发环境给程序添加的,实际运行时它们并不会存在。

练习
1 修改程序,在头文件包含指令后面加入注释,指明它为哪个函数服务。
2 注释掉#include指令行,观察编译过程。
3 去掉任意一个语句的结束符,编译程序观察结果。
4 将 int main()直接放在#include <stdio.h>后面,编译程序观察结果。
陕公网安备61011202001108号