Hello! World!


学习程序语言的第一件事,就是先学会如何在控制台(Console)上显示文本,也就是纯文本模式的显示,这很枯燥,不若一些窗口化的开发环境写起来有成就感,但控制台可以让程序设计人员专心于程序逻辑的开发,因而对初学者来说,是扎实学习语言的一个方式。

来看看如何使用 C 来编写一个简单的程序,将指定的文本输出于控制台上,C 的副文件名为 *.c,你可以使用任一种纯文本编辑程序来编辑 C 程序 :

#include <stdio.h>

int main(void) {
    printf("Hello! World!\n");
    printf("哈啰!C 语言!\n");

    return 0;
}

首先看到程序的第一行:

#include <stdio.h>

#include是宏(Macro)前置处理器指令(Preprocessor directive),它告诉编译器(Compiler)这个程序会用到 stdio.h 这个标头文件(Header file)定义的函数(Function),以便正确地编译程序中使用到的程序库函数,被含括的标头文件内容,会被插入#include的位置,然后再进行编译。

简单地说,控制台的输入输出功能就定义在这个文件中,这之后还会详细说明,现在请先记得,要在控制台进行输入输出,这一行一定要写。

接下来看主函数(Main function)的部份,在 C 程序中,程序的进入点(Entry point)是main()这个函数:

int main() { 
    .... 

    return 0; 
}

其中int表示这个程序执行完毕后会返回整数(Integer),括号的位置可设置参数列,之后会学到,在执行程序时,可同时将相关实参传递给程序。目前并不需要传递实参,因此括号中可设定void,表示程序不接收任何实参。

程序的最后一行是return 0,也就是程序结束后返回 0,在不成文的规定中,程序结束会返回一个数值,通常 0 表示程序正常结束,你可以让其他程序或 shell 来获取程序的返回值,以进行进一步的处理。

不过,在 C99/C11 之后,如果没有在最后编写return 0,默认就是返回 0 了,你可以省去这个动作。

再来看main()中的两行陈述:

printf("Hello! World!\n"); 
printf("哈啰!C 语言!\n");

在 C 程序中,每一个陈述(Statement)结束都必须使用分号(;),printf()是 C 提供的标准输出函数,如果要输出文本至屏幕上,可以使用双引号包括文本并写至printf的括号之间,简单地说,若要将文本显示于屏幕上,可以使用这样的写法:

printf("文本");

若在欲显示文本的后面加上'\n',表示要进行换行,否则的话,下一段文本会直接显示于同一行文本之后。

要输出的字符串是使用双引号""来包括,如果要显示双引号,必须先告诉编译这件事,也就是使用跳脱字符\",例如:

printf("我是\"良葛格\"!");

这段文本会文本模式下显示:我是"良葛格”。

接下来可以使用编译器来编译程序了,我是使用MinGW-w64,GNU 编译器版本是 8.1.0,执行之后,就可以看到控制台上出现这两段文本:

$ gcc hello.c
$ ./a.out
Hello! World!
哈啰!C 语言!




展开阅读全文