C语言基础知识总结
第一章 C语言的认识
1.1 C程序的构成
/*一个C语言程序*/
#include <stdio.h>
int main()
{
printf(“hello,baby! \n”); /*输出显示的字符串*/
return 0; /*程序返回 0 */
}
-
#include<头文件>
1. “#”是预处理标志,用来对文字进行预处理操作。
2. “include”是预处理标志,称文件包括命令。
3. “<>”表示头文件(Header File)在尖括号内读入,称为头部文件或首文件 -
空行: 可使编写出来的程序更加规范。
-
函数:
1.函数头/函数首(Function header)
< 关键字> main( )函数声明- “ int ” 关键字代表的类型为整形。
上述代码中表示 声明main()函数为一个返回值为整形的函数。 - 每个程序必须有一个main函数作为程序的入口,main函数称为主函数(main function)。
- “( )”中为形式参数表,但main()并没有形式参数。
- “ int ” 关键字代表的类型为整形。
- 函数体/函数的语句(Function Body)
在大括号中的就是函数体。 - 执行语句(Statement)
执行语句就是函数体中要执行的内容。- “ printf ”是产生格式化输出的函数,作用是向控制台输出文字或符号。
- “()”中的内容称为函数的参数。
a. “ \n ”为转义符,含义是把光标移动到下一行的行首。
- return语句
使main函数终止运行,并向操作系统返回一个“ 0 ”整数常量。 - 代码的注释(Comment)
为了方便用户理解程序代码的含义和设计思路。
1.2 C程序的结构
-
C语言中标准函数库(函数集 Library Function)包括15个头文件,可用于完成不同的功能。
-
每一个C程序都从main函数开始执行,不论位置在哪里。
-
函数体的内容要在"{ }"中。
-
执行语句以“ ; ” 结尾。
-
空格符、换行符、制表符等均称为空白符。函数名、关键字、字符串忽略所有的空白符。可用空白符让程序更加便于查看和美观。
-
关键字/保留字(Keyword)
预先设定的固定功能和意义的单词。- 用户只能按照预先规定的含义来使用。
- C语言自提供32个关键字。
-
标识符(Identifier)
以字母/下划线开头,后跟字母、数字、下划线的任意字符序列。- 系统预定义标识符(Predefined Identifier)
由系统预先定义好的,每个都有相对固定的含义。 - 用户自定义标识符(User-Defined Identifier)
用户根据编程需要自行定义的标识符。- 由字母、数字、下划线3类组成。
- 不可使用关键字(保留字)。
- 区分大小写。
- 必须以字母/下划线开头。
- 长度任意,一般只有前32个字符有效。长度不影响程序速度。
- 最好命名英文单词组合“见名知意”。
- 系统预定义标识符(Predefined Identifier)
-
运算符(Operator)
对数据进行运算的符号。
-
分隔符(Separator)
- 空格
- 回车/换行
- 逗号“ ,”
- 分号“ ;”
-
数据(Data)
-
常量
-
整型(integer)常量
整型常量可用八进制、十进制、十六进制3种表示形式。
对于带修饰符的整型常量可以通过加后缀的方法表示。
eg:长整型后缀是L/l,如123L、-123l。
无符号整型后缀U/u,如213u、32U。
无符号长整型后缀LU/lu/lU/Lu,如321LU。 -
实型常量/浮点型常量(Floating-Point)
只采用十进制数表示
- 小数形式(Decimal Format)
-
字符常量
-
字符串常量
-
符号常量
-
-
变量
-
1.3 C语言程序及其开发
- 编辑
将编写好的C语言程序录入到计算机中。
方法a:选择C语言集成开发环境中的编辑器。
方法b:使用其它文本编辑器。 - 预处理
执行程序的预处理指令(Preprocessor Directive)。(为优化代码而设计)- 以“ # ”开头。
- 预处理生成中间文件。
- 预处理又叫做 转译单元。
- 编译
将以生成的C语言源程序(Source Program)和预处理生成的中间文件转化为机器可识别的目标代码(二进制代码)。
源程序+中间文件=目标代码(.obj)- 编译时需进行检错,发现不符合,将以error或warning信息提示用户。
- 链接
把不同的二进制代码片段连接成完整的可执行文件。(executable file)- C程序一般都包含多处定义的函数和数据,它们分别被编译成二进制代码片段。
- 装载
将可执行文件装入内存储器。 - 运行
在CPU的控制下,将可执行文件逐条执行指令,最终显示结果。
1.4 C语言中的数据类型
- 数据类型的种类
- 基本类型
按数据占内存空间的大小可分为 短的(short) 和 长的(long)
按数据的正、负号可分为 有符号的(signed) 和 无符号的(unsigned)-
整型(int)
a.有符号短整型(signed short int)
b.无符号短整型(unsigned short int)
c.有符号基本整型(signed int)
d.无符号基本整型(unsigned int)
c.有符号长整型(signed long int)
d.无符号长整型(unsigned long int) -
实型
a. 单精度型(float)
b.双精度型(double)
c.长双精度型(long double) -
字符型(char)
a. 有符号字符型(signed char)
b.无符号字符型(unsigned char)
-
在C语言标准中未严格规定数据类型在内存中的长度,所以可用sizeof(数据类型) 来获得该数据类型所占的字节数。