C语言static关键字

C语言static关键字

C语言static关键字

static关键字的作用,主要从在程序的生存周期、作用域和在代码段中的位置起作用。

全局变量 静态全局变量 局部变量 静态局部量
生存周期 程序运行到结束 程序运行到结束 函数调用到函数返回 函数调用到程序结束
作用域 所有文件 只在当前文件可以访问 函数内部 函数内部
代码段中的位置 全局数据段 全局数据段 全局数据段

数据段:

  • .data:全局变量已初始化且不为0、静态变量、字符串常量。
  • .bss :未初始化或初始化为0的全局变量

栈: 局部变量、形参等。

分析下面代码中指针变量和字符串的存储位置

int main()
{
    char str1[] = "Hello world!";
    char *str2 = "Hello world!";
    char *str3 = (char*)malloc(128);
}
hmoban主题是根据ripro二开的主题,极致后台体验,无插件,集成会员系统
自学咖网 » C语言static关键字