3.4 调用函数在屏幕上显示文字

main函数体中的语句如下:

printf("\nHello World!");

这行是调用了C语言提供的按格式输出函数,该函数的名称是printf,小括号内双引号括起来的文字是printf函数的参数。该函数的功能是把小括号里的文字原样打印在屏幕上。也就是说双引号里的内容变化,则打印在屏幕上的文字也会变化。请读者自己试验修改双引号里的文字。

说明 “\n”在这里有特殊的含义,读者可以发现“\n”并没有在屏幕中打印出来。“\n”中的“\”是转义字符,表示其后面紧跟的字符有专门的意思。“\n”表示将光标移到第二行第一格,也就是回车换行的意思。

printf函数调用语句最后用分号结束。

函数定义和函数调用有如下的不同之处:

(1)函数定义就是程序员编写程序代码,去实现函数的功能。请读者注意,定义好的函数不一定会被调用。比如C语言提供的大批库函数都已经实现,但是程序员编写程序时并不会用到库函数中的每一个函数,只是从中挑选有用的库函数来使用。

(2)函数调用就是调用已经编写好的函数。这些已经编写好的函数可以是程序员自己编写的,叫作自定义函数;有的是C语言系统提供的函数,叫作库函数;有的是第三方提供的函数,叫作第三方库函数。C语言系统向程序员提供了非常丰富的库函数,以方便程序员使用。

相比其他高级语言而言,C语言本身语句很少。很多功能是通过函数完成的,因此熟悉库函数的功能就是程序员非常重要的工作了。比如开发网络程序,熟悉网络套接字接口函数就非常重要,否则不能开发网络程序;开发Windows窗口界面程序,就得熟悉Windows提供的编程接口(API),否则就不能开发Windows程序。

本例中,printf函数被主函数main调用。printf函数的定义读者是看不见的,当然也看不见printf函数的代码,也就不清楚printf函数是如何实现的。

不知道读者是否还记得程序生成的过程,其中有一步连接的步骤。printf函数是C语言的库函数,是C语言系统提供的,其源代码读者看不到,但是其编译后的目标文件读者是可以找到的。

留给读者一个试验:将代码3-1中main函数中的printf修改成其他单词,比如print_format,请在计算机上编辑、编译、连接、运行代码,并观察现象。