2021.1.17-Comprensión preliminar de punteros y estructuras

Comprensión preliminar de los punteros

int main()
{
        int a = 0;
        int* p= &a;
        printf("%d",*p);
        return 0;
}

El contacto inicial con el puntero, no se siente tan horrible como escuché antes, tal vez es solo que acabo de tocar la piel y lo sentiré cuando toque las cosas más profundas en el futuro. Por favor, trabaje más duro.
En primer lugar, necesitamos saber qué significa el código anterior, int a = 0 es obviamente el proceso de asignar "0" a la variable entera a; tenemos que entender que p es una variable de puntero, que se usa para almacenar direcciones Una variable.
p es encontrar el contenido de la dirección apuntada por
p. La variable p para almacenar la dirección de a (& a)
nos dice que p es una variable apuntadora, e int nos dice que el contenido de la dirección apuntada por p es una
variable apuntadora de tipo entero . La longitud de la dirección no se basa en lo que apunta Está determinado por el tipo de contenido, pero por el entorno de compilación. 32 bits son 4 bytes y el entorno de 64 bits son 8 bytes;

La comprensión preliminar de la estructura
Todos sabemos que el código es una forma de construir el mundo real, pero la entidad en el mundo real no es un atributo único, cada entidad es un objeto complejo. Por ejemplo, cuando queremos describir a una persona, necesitamos tener la información de nombre, altura, edad y número de identificación. En este momento, no podemos simplemente usar matrices o definiciones para lograr esto, debemos usar una estructura para crear una Escríbalo.
Instrucciones:

struct Book //创造一个结构体类型
{
   char name[20];
   short price;
}

De esta manera, un tipo de libro se construye simplemente, y cuando se usa en una función, las variables deben definirse antes de que pueda usarse. Struct Book book1 = {"Comprensión preliminar del lenguaje C", 55}; De
esta manera, hemos explicado que un libro es "lenguaje C" Se define un entendimiento preliminar "y el precio del libro de 55 yuanes.
Entonces, ¿qué pasa si solo queremos saber el título del libro?
El primer método
utilizará nuestro operador "." En este momento, puede acceder a los miembros de nuestro libro1, el nombre miembro: libro.nombre; el precio miembro: libro.precio; el
segundo método
se crea para libro1 Puntero, y luego use el operador "->" para completar, use: variable puntero de estructura -> nombre de miembro. Nota: El tipo de puntero utilizado para crear book1 es struct Book *

Cómo modificar la estructura Al
modificar la variable entera en el miembro de estructura, puede asignar directamente el valor para sobrescribir el valor anterior,
int book1.price = 36; eso es todo,
y cuando modifica el tipo de cadena en el miembro de estructura, debe usarlo La función strcpy () solo se puede usar cuando se introduce el archivo de encabezado string.h.
Cómo utilizar: strcpy (book1.name, "C ++");

Bueno, aprendí tan poco conocimiento el 17 de enero de 2021, ¡pero creo que es suficiente para que un novato como yo lo entienda!

Supongo que te gusta

Origin blog.51cto.com/15083094/2593907
Recomendado
Clasificación