Colección de citas famosas - Slogan de motivación - ¿Qué significa const en C?

¿Qué significa const en C?

En el estándar C, lo que se define de esta manera es una constante, que se utiliza para modificar variables de tipo integradas, objetos personalizados, funciones miembro, valores de retorno y parámetros de funciones.

Uso de const (tipo):

1. Dos situaciones utilizadas para punteros: const es un modificador de tipo asociativo por izquierda.

int const* A; //A es variable, *A es inmutable

int*const A; //A es inmutable, *A es variable

2.

void function(const int Var); //Los parámetros pasados ​​no se pueden cambiar dentro de la función.

3. Limitar el tipo de valor de retorno de la función.

const int function(); //const no tiene sentido en este momento

const myclassname function(); //La función devuelve el tipo personalizado myclassname.

4. .

p>

void function()const; // Función miembro constante, una función miembro constante es una función que no puede cambiar el valor de una variable miembro.

Información ampliada:

Resumen:

1. El puntero en sí es constante e inmutable

(char*) const pContent;

p>

const (char*) pContent;

2. El contenido al que apunta el puntero es constante e inmutable

const (char) * pContent;

(char) const *pContent;

3. Ambos son inmutables

const char* const pContent;

4. El método de diferencia:

p>

Dibuje una línea a lo largo del signo *,

Si const se encuentra en el lado izquierdo de *, entonces const se usa para modificar la variable apuntado por el puntero, es decir, el puntero apunta a una constante;

Si const está en el lado derecho de *, const modifica el puntero en sí, es decir, el puntero en sí es una constante.

5. Parámetros de función modificados constantemente

Los parámetros de función modificados constantemente son su uso más común. Significa que el valor del parámetro no se puede modificar en el cuerpo de la función (incluido el valor de). el parámetro en sí o el parámetro contiene el valor). Puede estar bien

void function(const int Var); //Los parámetros pasados ​​no se pueden cambiar dentro de la función (sin sentido, porque Var en sí es un parámetro formal)

void function (const char* Var); //El contenido señalado por el puntero del parámetro es constante e inmutable

void function(char* const Var); //El puntero del parámetro en sí es constante e inmutable (tampoco tiene sentido, porque char* Var también es un parámetro formal)

Los parámetros son referencias, para aumentar la eficiencia y evitar modificaciones.

6. Al modificar los parámetros de referencia:

void function(const Classamp; Var); //Los parámetros de referencia no se pueden cambiar dentro de la función

void function( const TYPEamp; Var); // Los parámetros de referencia son constantes e inmutables dentro de la función

7. Valor de retorno de la función modificada constante

El valor de retorno de la función modificada constante no es muy práctico. Es básicamente el mismo que el de las variables y punteros ordinarios modificados constantemente.

(1) const int fun1() Esto en realidad no tiene sentido, porque el retorno del parámetro en sí es una asignación.

(2) const int * fun2()?

8. Al llamar, const int *

Referencia:

Enciclopedia Baidu ——CONST (CONST en C)