C语言的存储类别有以下几种:
自动存储类(auto):默认的存储类别,用于自动变量。自动变量在函数内部定义,函数结束时会被销毁。
静态存储类(static):用于声明静态变量。静态变量在程序执行期间一直存在,不会被销毁。静态变量的作用域可以是局部的或全局的。
寄存器存储类(register):用于声明寄存器变量,这些变量存储在CPU的寄存器中,访问速度更快。寄存器变量不能取地址,也不能有静态的或外部的链接类型。
外部存储类(extern):用于声明全局变量或函数,表示变量或函数是在其他文件中定义的,可以在本文件中使用。外部变量在程序执行期间始终存在,不会被销毁。
静态外部存储类(static extern):用于声明外部变量,其作用域限制在当前文件中,其他文件无法访问。
这些存储类别在C语言中用于控制变量的生命周期、作用域和存储位置。