#include <stdio.h>
int main(void)
{
int num[4][2];
num;
num[0];
return 0;
}
Permítanme discutir la diferencia entre num y num [0]. Según mi análisis, ambos representan direcciones, pero usaré num [4] [2] para visualizar y comprender
Este debería ser el modo de almacenamiento de la matriz bidimensional en el espacio.
num
num [0]
Hay una pequeña diferencia entre los dos, aunque la dirección del primer elemento almacenado es la dirección de num [0] [0], pero los dos representan diferentes
num, num + 1, num + 2
son las direcciones que representan el tamaño de dos tipos int, es decir,
num [0], num [1], num [2] representa la dirección del primer elemento de esta fila, representa un dirección de tipo int.
Sin embargo, & num [0] es igual a num. Representa esta fila, que representa una matriz.
Una matriz bidimensional se puede considerar como dos matrices, primero se accede a las filas y luego a las columnas. Primero ingrese la matriz de filas y luego ingrese la matriz de columnas de acuerdo con la dirección almacenada en la matriz de filas. En la matriz de columnas solo se almacenan números o elementos.
num es un puntero secundario.
Primero * num, representa la aplicación de solución, ingrese esta fila de la matriz y luego resuelva el número de la aplicación nuevamente , extraiga el número almacenado en la dirección del primer elemento de la matriz, o trátelo como
( ( num + 0) +0), los corchetes dentro representan El primer elemento cuyo arreglo está fuera del paréntesis es el primer elemento, que tiene el mismo significado que num [0] [0].
Esto es principalmente para discutir el modo de almacenamiento de una matriz bidimensional en la memoria.
Si hay un error, por favor dé un consejo.
Hay más.
Puntero avanzado UNO