- stdio是C编译器软件包的标准部分,它提供键盘输入和屏幕输出的支持
指令和头文件
- #include <stdio.h> ,相当于把stdio.h文件中的所有内容都输入该行所在的位置。这是一种复制-粘贴操作。
- #include 是一条预处理指令(preprocessor directive)。通常C编译器再编译前会对源代码做一些准备工作,即预处理(preprocessing)。#符号表明,c预处理器在编译器之前接手这条指令
- 头文件:C顶部的信息集合,包含了编译器创建最终可执行程序要用到的信息。头文件帮助编译器把程序正确地组合在一起
头文件可以定义一些常量或者指明函数名,帮助编译器把程序正确的结合在一起。
main()函数
C程序包含一个或多个函数,它们是C程序的基本模块- C程序从一定从main()函数开始执行
- 圆括号(),用于识别函数。里面可以包含一些传入函数的信息。圆括号内是void表示没有传递任何信息
- int main()
int 是 main(void) 函数的返回类型,这表明main()函数返回的值是整数。void表明main()函数不带任何参数。
- 注释
提高程序的可读性:多行/* */和C99新增单行// 花括号、函数体和块
- 所有的C函数都使用 花括号 { } 标记函数体的开始和结束
- 花括号还可用于把函数中多余语句合并为一个单元或块
声明(declaration)
- 声明把特定标识符与计算机内存中的特定位置联系起来。在C语言中,都必须先声明才能使用。
- int:声明一个整数变量,是C语言中的一个关键字(keyword),关键字是定义语言的单词,不能用作函数名和变量名。
- 标识符:也就是一个变量的、函数或其他实体的名称
- 命名:大小写字母、数字、下划线,第一个字符必须是字母或者下划线,不能是数字,区分大小写。操作系统和C库经常使用以一个或两个下划线字符开始的标识符,因此最好避免在自己的程序中使用这种名称
- C99之前的标准要求把声明都置于块的顶部,C99和C11遵循C++的惯例,可以把声明放在块中的任何位置,但是在使用前必须先声明,如果事先未声明变量,C程序将无法通过编译
赋值
- 赋值语句,在执行int num; 声明时,编译器在计算机内存中预留了空间,然后在执行赋值语句时,把值存储在之前预留的位置
printf()函数
- 圆括号表明printf是一个函数名。圆括号中的内容是从main()函数传递给printf()函数的信息,该信息被称为参数,或者更确切的说,是函数的实际参数(actual argument),在C语言中实际参数是传递给函数的特定值,形式参数是函数中用于存示
- 函数执行结束后,控制权被返回至主调函数(calling function)
- 转义序列:用于代表难以输入的字符,每个转义字符都以反斜杠 \ 开始,如\n
- %d相当于一个占位符,用于指明输出num的位置
return语句
return 0;- int main()中的int表明main()函数应返回一个整数,C标准要求mian()这样做
- 函数中的最后一条语句,有返回值的C函数要有return语句,如果遗忘main()函数中的return语句,程序在运行至 } 时会默认返回0,强烈建议养成保留return语句的习惯。
- 程序由一个或多个函数组成,必须要有main()函数。函数由函数头和函数体组成。函数头包括函数名、传入该函数的信息类型和函数的返回类型,C程序大部分语句都以分号 ; 结尾
提高程序可读性的技巧
- 选择有意义的函数名
- 写注释
- 在函数中用空行分隔概念上的多个部分
- 每条语句各占一行
- 分号告诉编译器一条语句在哪里结束、下一条语句在哪里开始
多条声明
- 在声明中用逗号隔开两个变量
多个函数,加入自己的函数
- 第一次是函数原型(prototype),也被称为函数声明(function declaration),告知编译器在程序中要使用该函数
- 第二次是函数调用(function call),出现在main()中
- 第三次是函数定义(function definition),函数定义是函数本身的源代码
- 何时执行函数取决于它在main()中被调用的位置,而不是定于在文件中的位置
最后修改:2024 年 02 月 27 日
© 允许规范转载