提示:参考C Primer Plus(第六版)进行C语言学习
程序清单1
#include<stdio.h>
int main(void) /*一个简单的C程序*/
{
int num; /*定义一个名为num的变量*/
num=1; /*为num赋一个值*/
printf("I am a simple"); /*使用printf函数*/
printf("computer.\n");
printf("My favourite number is %d because it is first.\n",num);
return 0;
}
????????首先,用你熟悉的编译器创建一个包含上述程序清单中所有内容的文件。给文件命名,并以.c作为扩展名,以满足当前系统对文件名的要求。eg:first.c。如果一切运行正常,则运行结果:
I am a simple computer.
My favourite number is 1 because it is first.
程序调整
????????程序的输出是否在屏幕上一闪而过?某些窗口环境会在单独的窗口运行程序,然后在程序运行结束后自动关闭窗口,如果遇到这种情况可以在程序中添加额外的代码,让窗口等待用户按下一个键后才关闭。方法是在程序的return语句前添加一行代码:
????????getchar();
????????这行代码会让程序等待击键,窗口会在用户按下一个键后才关闭。
????????#include<stdio.h>? ? ? ? ? ? 包含另一个文件? ? ? ? ?? ?
????????该行告诉编译器把stdio.h中的内容包含在当前程序中,stdio.h是C编译器软件包的标准部分,它提供键盘输入和屏幕输出的支持。? ? ?
????????int main(void)? ? ? ? ? ? ? ? ?函数名
????????C程序包含一个多个函数,它们是C程序的基本模块。圆括号表明main()是一个函数名,int表明main()函数返回一个整数,void表明main()不带任何参数。int和void是标准ANSI C定义main()的一部分(如果使用ANSI C之前的编译器,请省略void,考虑到兼容的问题,请尽量使用较新的编译器)。
????????{? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?函数体的开始
????????左花括号表示函数定义开始,右花括号表示函数定义结束。
????????int num;? ? ? ? ? ? ? ? ? ? ? ? ? ?声明
????????该声明表示,将使用一个名为num的变量,而且num是int(整数)类型。
????????num=1;? ? ? ? ? ? ? ? ? ? ? ? 赋值表达式语句
????????把值1赋值给名为num的变量。
?????????printf("I am a simple");? ?调用一个函数
????????该语句使用printf()函数,在屏幕上显示I am a simple,光标停在同一行。printf()是标准的C库函数。在程序中使用函数叫做调用函数。
?????????printf("computer.\n"); 调用另一个函数
????????在上调语句打印出来的内容后面加上“computer”。代码\n告诉计算机另起一行。
?????????printf("My favourite number is %d because it is first.\n",num);
????????%d告以何种形式输出num的值,打印在何处。
????????return 0;? ? ? ? ? ? ? ? ? ? ? ? ? ? return 语句
????????C函数可以给调用方提供或返回一个数。目前,可暂时把该行看作是结束main()函数的要求。
????????}? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 结束
????????必须以右花括号表述程序结束。
? 1.#include指令和头文件
????????#include<stdio.h>
????????#include<stdio.h>的作用相当于把stdio.h文件中所有的内容都输入改行所在的位置。实际上,这是?一种“拷贝-粘贴”的操作。include文件提供了一种方便的途径共享许多程序共有的信息。????????
????????#include这行代码是一条C预处理指令。通常,C编译器在编译前会对源代码做一些准备工作,即预处理。
? ? ? ? 所有的C编译软件都提供stdio.h文件。该文件中包含了供编译器使用的输入和输出函数(如printf())信息。改文件名的含义是标准输入/输出头文件。通常,在C程序顶部的信息集合被称为头文件。
? ? ? ? 在大多数情况下,头文件包含了编译器创建最终可执行程序要用到的信息。例如,头文件中可定义一些常量,或者指明函数名及它们如何使用。但是,函数的实际代码在一个预编译代码的库文件中。简而言之,头文件帮助编译器把你的代码正确的组合在一起。
????????ANSI/ISO C 规定了C编译器必须提供哪些头文件。有些程序要包含stdio.h,而有些不用。特定C实现的文档中应该包含对C库函数的说明。这些说明确定了使用哪些函数需要包含哪些头文件。例如使用printf()函数,必须包含stdio.h头文件。
2.main()函数
????????int main(void);
????????C程序一定是从main()函数开始执行(目前不必考虑例外的情况)。除了main()函数,你可以任意命名其他函数,而且main()函数必须是开始的函数。圆括号有什么功能?用于识别main()是一个函数。
? ? ? ? int是main()函数的返回类型。这表明main()函数返回的值是整数。(返回到什么地方?我们在后续学习中讨论)
? ? ? ? 通常,函数名后面的圆括号中包含一些传入的信息。该例中没有包含任何信息。
main()、void main()都是不标准形式。只要坚持使用标准形式,把程序从一个编译器移至另一个编译器是就不会出什么问题。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
以上就是今天要讲的内容,本文仅仅简单介绍了C语言,明天继续学习第二章。