大橙子网站建设,新征程启航

为企业提供网站建设、域名注册、服务器等服务

关于CPrimerPlus--12-创新互联

第十二章 存储类别、链接和内存管理

1.C语言中对“对象”的描述

在万载等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供成都做网站、网站制作 网站设计制作按需网站设计,公司网站建设,企业网站建设,高端网站设计,网络营销推广,成都外贸网站建设,万载网站建设费用合理。

2.不同的存储类别具有不同的存储器、作用域和链接

3.作用域描述程序中可访问标识符的区域

4.一个C变量的作用域可以是块作用域、函数作用域、函数原型作用域或文件作用域

5.定义在块中的变量具有块作用域

6.另外,虽然函数的形式参数声明在函数的左括号之前,但是它们也具有块作用域,属于函数体这个块

7.声明在内层块中的变量,其作用域仅局限于该声明所在的块

8.函数作用域仅用于goto语句的标签

9.变量的定义在函数的外面,具有文件作用域

10.文件作用域变量也称为全局变量

11.每个翻译单元均对应一个源代码文件和它所包含的文件

12.C变量有3种链接属性:外部链接、内部链接和无链接

13.具有块作用域、函数作用域或函数原型作用域的变量都是无链接变量

具有文件作用域的变量可以是外部链接或内部链接

外部链接变量可以在多文件程序中使用,内部链接变量只能在一个翻译单元中使用

14.C对象有4种存储期:静态存储期、线程存储期、自动存储器、动态分配存储期

15.无论是内部链接还是外部链接,所有的文件作用域变量都具有静态存储期。注意,对于文件作用域变量,关键字static表明了其链接属性,而非存储期。

16.块作用域的变量通常都具有自动存储期。然而,块作用域变量也能具有静态存储期。

17.5种存储类别:自动、寄存器、静态块作用域、静态外部链接、静态内部链接

18.由于寄存器变量存储在寄存器而非内存中,所以无法获取寄存器变量的地址

19.使用存储类别说明符register便可声明寄存器变量

20.静态变量中的“静态”意思是:该变量在内存中原地不动,并不是说它的值不变

21.具有文件作用域的变量自动具有(也必须是)静态存储期

22.静态变量会保留它变化后的值

23.如果未显式初始化静态变量,它们会被初始化为0

24.不能在函数的形参中使用static

25.与自动变量不同的是,如果未初始化外部变量,它们会被初始化为0.这一原则也适用于外部定义的数组元素

26.内部链接的静态变量(在所有函数外部)只能用于同一个文件中的函数

27.C语言有6个关键字作为存储类别说明符:auto、register、static、_Thread_local和typedef

28.auto说明符表明变量是自动存储期,只能用于作用域的变量声明中

29.块作用域的静态变量无链接,文件作用域的静态变量具有内部链接

30.随机数函数:rand()函数生成随机数

31.要编译多个文件,可以将其放在同一个文件夹和目录中

32.分配内存:malloc()和free()

34.指向void的指针,相当于一个“通用指针”。把指向void的指针赋给任意类型的指针完全不用考虑类型匹配的问题。如果malloc()分配内存失败,将返回空指针

35.通常,malloc()要与free()配套使用

free()参数应该是一个指针,指向由malloc()分配的一块内存

36.exit()函数是结束程序的

37.静态内存的数量在编译时是固定的,在程序运行期间也不会改变。zidongbianliang使用的内存数量在程序执行期间自动增加或减少。但是动态分配的内存数量只会增加,除非用free()来释放

38.分配内存还可以使用calloc()函数(与malloc()类似)

39.restrict关键字只能用于指针,表明该指针是访问数据对象的唯一且初始的方式

......以上总结,如有不到之处,请见谅。欢迎大家指出问题,一同学习。

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


名称栏目:关于CPrimerPlus--12-创新互联
转载来于:http://dzwzjz.com/article/jdcps.html
在线咨询
服务热线
服务热线:028-86922220
TOP