Variable global variable local estática dinámica estática registro automático externo

Variable global

Cuando las variables globales no se inicializan, el sistema toma el valor predeterminado de 0; las variables locales no tienen un valor predeterminado.

1. Variables externas estáticas (solo este texto) (agregar estática)
2. Variables externas (no se permiten variables externas estáticas, se permiten otras referencias de archivo)

Variable local

Variables automáticas, ambas variables locales dinámicas (desaparecerán al dejar el valor de la función) (auto auto)
variables locales estáticas (dejar el valor de la función retenido) (usar estático)
registrar variables (dejar que el valor de la función desaparezca)
(los parámetros formales se pueden definir como variables automáticas o Registrar variable)
Si el valor de una variable local no quiere ser liberado, agregue static antes de que el valor de la variable local se convierta en estático;
si el valor de una variable global no quiere ser referenciado por otros archivos, solo utilícelo en el archivo donde se encuentra. Agregue estática antes;

static int a; //静态局部整形变量或静态外部整形变量;
			//函数中变量不随函数结束就消失,而保留原值,空间不释放。
auto char c;//自动变量,在函数内定义;
           //局部变量如果不专门声明为static(静态)存储类别,都自动默认为auto动态存储区中。

register int d;//寄存器变量,在函数内定义;
            //以前版本低,运算器与内存互交流工作,导致变量使用频率过多时就会存储和拿出运算,
			//使计算变慢,所以次函数,将所用变量暂时放入CUP存储器中。
			//对于常使用的变量,减少运算时间,就将本该存放在内存中的值,暂时存放在CPU中直接运算。
			//现在系统自动识别使用频率高的自动放入CPU的寄存器中。
extern a;//将已定义外部变量a的作用域引用至此(可跨文件引用)

Supongo que te gusta

Origin blog.csdn.net/weixin_52270223/article/details/110149100
Recomendado
Clasificación