C语言核心技术—第一章上

第一章:C语言基础

1.1C语言程序结构

​ 函数定义,全局声明和预处理命令组成了C语言程序

1.1.1 关于链接库:

​ C语言链接库除标准库外,还有许多特殊链接库可以使用,例如图形函数链接库。

​ 如果使用非标准库,会限制所开发程序的可移植性。这些程序只能移植到已经加载了这些非标准库的系统上

1.1.2关于预处理命令

​ 函数中调用的每个函数需要在该函数前声明,预处理命令#include<.h>指示编译器的预处理器将该头文件内容插入到源代码中,以达到声明头文件中函数的目的。

​ 预处理命令每条需独占一行,且#前只能有空格符或制表符,不可有其它字符(若想换行可在前一行最后加反斜线)

1.1.3关于函数

​ C语言由函数组成,一个函数可以调用其他函数。函数的定义不能嵌套在另一个函数内(也就是说函数内可以定义局部变量,但是不能定义局部函数)

1.2源代码文件

1.2.1模块化

​ C语言支持模块化,也就是将一个程序组织成多个源代码文件和头文件,然后分别编译他们

​ 对于一个包含多个源文件的程序,可利用头文件来存储函数的声明、全局变量、宏与常量。并通过引用头文件来间接声明它们。

1.2.2编译单元与标记

​ 每个C源代码文件连同被包含在其中的头文件,构成一个翻译单元。

​ 编译器按次序处理编译单元的内容,把源代码转换成标记。标记是最小的语义单元,如变量名称与运算符

1.3注释

​ 预处理器仅通过检查注释的结束符来判定注释结束,因此不能嵌套块注释。若想注释包含块注释的代码,可使用条件预处理命令,例:

#if 0			/*如果true则执行之间的代码,false直接跳过 0代表false)
	int a = 5; /*定义a*/
    printf("%d\n", a); /*输出a*/
#endif

​ 预处理会把每个注释都替换成一个空格

1.4环境

​ 编译器转换程序源代码时,所处环境称为编译环境

​ 编译后程序执行,所处环境称为运行环境

1.5字符集

​ C语言定义了两个字符集:源代码字符集和运行字符集。源代码字符集用于组成源码,运行字符集是可以被执行程序解释的字符集

​ 在许多C语言实现版本中,两个字符集相同。若不同,则编译器会把源代码中的字符常量和字符串字面量转换成运行字符集中对应的元素

1.5.1宽字符和多字节字符

​ 为兼容全球的所有语言,有些字符需要超过一个字节来编码。因此出现了两种表示大型字符集的标准化方法:

​ 宽字符:该字符集内,每个字符使用相同的位长

​ 多字节字符:每个字符可以采用一个或多个字节表示,通过它所在字符串或流的上下文,来确定字符值

1.5.2双字符组和三字符组

​ 有些符号在键盘无法输入,可采用一些等效方法实现。例如双字符组和三字符组。

​ 例如:<: 等价为 [

​ %> 等价为 }

​ ??< 等价为{ 等等

1.5.3通用符和标识符

​ 通用符即Unicode值,格式为\uXXXX或\UXXXXXXXX (X为16进制数),可用于标识符、字符常量、字符串字面量。

​ 标识符用于引用变量、函数、宏、结构以及其他定义的对象

转载请注明出处!!!

如果有写的不对或者不全面的地方 可通过主页的联系方式进行指正,谢谢

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值