matriz de punteros I.
1. El conjunto de parámetros de la función del puntero de la tabla es en realidad
sizeof(a) == sizeof(int * );
int a[ ] ⇔ int *a
Los siguientes cuatro prototipo de función es equivalente a:
- que suma (ar *, estás n);
- que suma (ar [], eres n);
- int suma (int *, int);
- suma int (int [], int);
2. La variable de matriz es un puntero especial
- Propia matriz indica la dirección,
- int a [10];
- int * p = a; // hay necesidad de tomar una variable y
- La expresión de matriz de células es una variable, y la necesidad de tomar la dirección.
- [] El operador puede hacer que la matriz, un puntero puede ser hecho;
P [0] ⇔ A [0] * El operador puede utilizar el puntero, la matriz se puede hacer;
Const variable de matriz es un tipo de puntero, y por lo tanto no se puede cambiar la asignación;
int A [] ⇔ const int * B;
II. La aritmética de punteros
(1) para añadir un puntero, un número entero de resta (+, + =, -, - =);
(2) disminución de incremento (+, -);
(3) restando dos punteros;
1. Modified:
- Es decir, además de un puntero a la dirección indicada por el valor del puntero más un sizeof (tipo de puntero), pasar a la siguiente celda.
- Pointer 1 - dirección de la celda 2 es la diferencia entre el resultado de, no el valor de la diferencia de dirección entre:
(Pointer 1-- Pointer 2) / sizeof (tipo de puntero);
2. * p ++
- Después de la eliminación de los datos mencionados p, p se mueve a la siguiente celda;
- Una matriz de funcionamiento continuo basado en el espacio;
- En algunos CPU, que puede ser traducido directamente en una instrucción ensamblador;
3. Comparación de puntero
- ! <, <=, ==,>,> =, = puntero puede compararse (dirección de memoria comparar);
- Dirección de la matriz aumenta linealmente.
4.0 Dirección
- A 0 dirección no es normalmente capaz de tocar la dirección de azar;
- Puntero no debe tener un valor de 0;
- Generalmente se expresa cosas especiales con 0 Dirección:
- Devolver un valor no válido;
- Puntero no inicializado es en realidad.
- Nulo es un símbolos predefinidos, representa la dirección 0
El tipo de puntero
- No importa qué tipo de puntos, el tamaño de todos los punteros son los mismos, ya que todas las direcciones;
- Punteros apuntan a diferentes tipos de asignación no es directamente el uno al otro; esto es para evitar el uso de las manos equivocadas.
6. La acción del puntero
- Cuando se le pasa como argumento requiere grandes transacciones;
- Después de pasar una matriz de matrices que hacer la operación;
- La función devuelve más de un resultado;
- Necesidad de modificar más de una función variables;
- memoria de aplicaciones dinámico.
Mis notas manuscritas
Código MOOC
cuestiones que se plantean
1. * p ++ significado
Resolución: El unario * + y por debajo del nivel del valor de P sacado después de la posición P a la siguiente.