在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
1.动态局部变量:也称局部变量、自动变量,是指在函数内部定义的自动变量,不带static修饰,作用域是定义该变量的子程序。在退出函数后,变量自带内存会自动释放。 2.静态局部变量:是指在函数内部定义的静态变量,带static修饰,作用域是定义该变量的子程序。只被定义和初始化一次,这种变量在函数退出后不会释放内存,且保持其值,下次调用时不再重新创造和初始化该变量,而是直接用上一次留下的值为基础来进行操作。直到程序退出时一起释放(生存期为整个源文件)。 3.动态全局变量:也称全局变量,是指在所有函数外定义的动态变量,作用域为整个程序,即可以在任何函数内使用,且可以被程序的其他文件所访问。只被定义和初始化一次,以后调用时值保持上一次的不变。 4.静态全局变量:是指在所有函数外定义的静态变量,作用域为整个程序,可以在定义它的文件内的任何地方被访问,不可以被程序的其他文件所访问。 5.跨文件引用全局变量:在一个程序的多个.c源文件中,可以在一个.c源文件中定义全局变量y_x,并且可以在别的另一个.c源文件中引用该变量y_x(引用前要声明)。函数和全局变量在C语言中可以跨文件引用,他们的连接范围是全局的,具有文件连接属性,函数和全局变量是可以跨文件看到的(直接影响就是:在a.c和b.c中各自定义了一个函数func(),名字相同但内容不同,编译报错)。 6.动态分配内存:指通过malloc,calloc,zalloc等函数申请的内存空间,这类空间在退出函数后不会自动释放,要释放只有通过free函数的调用,进行内存释放。 C语言中,局部变量可以和全局变量重名。当局部变量和全局变量同名时,在定义局部变量的子程序内,局部变量起作用,在其它地方全局变量起作用,即局部变量会屏蔽与之同名的全局变量,在函数内引用这个变量时,会用到同名的局部变量,而不会用到全局变量。 |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论