-
存储类别
被储存的每个值都占用一定的物理内存,C语言把这样的一块内存称之为对象。程序通过声明变量来访问对象。
标识符:是个名称,可以用来指定特定对象的内容。指定对象的表达式被称为左值。
存储期:描述对象,指对象在内存中保留了·多长时间。标识符用于访问对象,可以用作用域和链接描述标识符。
作用域:
描述程序中可访问标识符的区域。可以是块作用域、函数作用域、函数原形作用域或文件作用域。定义在块中的变量具有块作用域。可见范围是从定义处到包含该定义的块的末尾。
函数作用域:仅用于goto语句的标签。
函数原型作用域:用于函数原形中的形参名。从形参定义处到原形声明结束。
文件作用域:
变量定义在函数的外面。从定义处到函数末尾都可见。
链接:
具有块作用域、函数作用域、函数原型作用域的变量都是无链接变量。这些变量都属于定义它们的块、函数、或原形私有。具有文件作用域的变量可以是外部链接或内部链接。外部链接可以在多文件程序中使用,内部链接变量只能在一个翻译单元中使用。内部链接的文件作用域简称为“文件作用域”,把外部链接的文件作用域简称为“全局作用域”。
存储期
:作用域和链接描述了标识符的可见性。存储期描述了通过这些标识符访问的对象的生存期。
静态存储期:它在程序的执行期间一直存在。文件作用域变量具有静态存储期。static表明其链接属性,具有内部链接,而非存储期。无论是内部·链接
进阶C语言、第十二章储存类别、链接、内存管理
最新推荐文章于 2023-02-26 20:42:27 发布
本文详细介绍了C语言中的存储类别,包括作用域、链接和存储期的概念。讨论了静态存储期、线程存储期、自动存储期和寄存器变量的特性。同时,讲解了内存管理中的动态内存分配函数malloc()、calloc()和free(),以及const和volatile等限定符的作用。
摘要由CSDN通过智能技术生成