Respuesta
Puntero a puntero. Para más detalles se puede comprobar: Pointer to pointer
EDITAR Puede ser bueno, por ejemplo, para asignar dinámicamente las matrices multidimensionales:
igual:
#include <stdlib.h>
int **array;
array = malloc(nrows * sizeof(int *));
if(array == NULL)
{
fprintf(stderr, "out of memory\n");
exit or return
}
for(i = 0; i < nrows; i++)
{
array[i] = malloc(ncolumns * sizeof(int));
if(array[i] == NULL)
{
fprintf(stderr, "out of memory\n");
exit or return
}
}
También sería una buena idea demostrar que se libera de manera adecuada el multidimensional matriz en orden inverso de asignación. –
Sí, tienes razón :). No olvide utilizar \t para (int i = 0; i
Gracias. Ese enlace fue el más beneficioso. – numerical25
Significa que la variable es un puntero a un puntero.
Puntero a un puntero.
Puntero a un puntero al declarar la variable.
Desreferencia de dos punteros cuando se usa fuera de la declaración.
En una declaración, que significa que es un puntero a un puntero:
int **x; // declare x as a pointer to a pointer to an int
Al usarlo, deferencias dos veces:
int x = 1;
int *y = &x; // declare y as a pointer to x
int **z = &y; // declare z as a pointer to y
**z = 2; // sets the thing pointed to (the thing pointed to by z) to 2
// i.e., sets x to 2
¿Y si establecieras z a 2 usando solo un punto * z = 2? – numerical25
@num Cambiaría y para apuntar a la ubicación de la memoria 2, y '* y = 1;' o '** z = 1;' intentarían cambiar la memoria en la dirección 2, lo que es casi seguro fuera de la ubicación legal rango que le han asignado –
Es un puntero a un puntero. Puede usar esto si desea apuntar a un array
, o un const char *
(cadena). Además, en Objective-C con Cocoa esto a menudo se usa para apuntar a un NSError*
.
** variable es doble desreferencia. Si la variable es una dirección de una dirección, la expresión resultante será el valor l en la dirección almacenada en la variable *.
puede significar cosas diferentes si se trata de una parte de la declaración:
tipo ** variables significaría, por el contrario, un puntero a un puntero, es decir, una variable que puede contener la dirección de otra variable , que también es un puntero, pero esta vez a una variable del tipo 'tipo'
Significa que la variable se desreferencia dos veces. Supongamos que tiene un puntero a un puntero a char así:
char ** variable = ...;
Si desea acceder al valor de este puntero está apuntando a, usted tiene que eliminar la referencia dos veces:
** variable de
Se puede utilizar para explicar cdecl C-tipos.
Hay una interfaz en línea aquí: http://cdecl.org/. Ingrese "int ** x" en el campo de texto y verifique el resultado.
puntero a otro puntero
Si hace una pregunta tan básica, probablemente también necesite explicar el concepto de un puntero. – agf
** es un puntero a un puntero. A veces se usan para arreglos de cadenas.
es un puntero al puntero ,. como en el caso de x * significa que contendrá una dirección de alguna variable que si digo m = x & que m se muestra como int ** m
- 1. ¿Qué significa '??' significa en C#?
- 2. ¿Qué significa ~ en C++?
- 3. ¿Qué significa "&" en C++?
- 4. ¿Qué significa :: en C++?
- 5. ¿Qué significa [,] en C#?
- 6. ¿Qué significa :: :: en C++?
- 7. ¿Qué significa^= en c/C++?
- 8. ¿Qué significa "para (;;)" en C#?
- 9. ¿Qué significa '?' hacer en C++?
- 10. ¿Qué significa "var" en C#?
- 11. ¿Qué significa "() =>" en C#?
- 12. ¿Qué significa -> en C++?
- 13. ¿Qué significa "clase:" en C++?
- 14. ¿Qué hace? en C significa?
- 15. ¿Qué significa/*! */Mean en C#?
- 16. ¿Qué significa "= 0" en C++?
- 17. ¿Qué significa #pragma en C?
- 18. ¿Qué significa (vacío **) en C?
- 19. ¿Qué significa EPS en C?
- 20. ¿Qué significa() => en C#?
- 21. ¿Qué significa Lejos en c?
- 22. ¿Qué significa cmd/C?
- 23. qué significa global :: C#
- 24. ¿Qué significa \ x en c/C++?
- 25. ¿Qué significa este código C++?
- 26. C - ¿Qué significa esta línea?
- 27. ¿Qué significa esta declaración C?
- 28. ¿Qué significa una declaración "CALLBACK" en C?
- 29. Shellcode en C - ¿Qué significa esto?
- 30. ¿Qué significa isa en objetivo-c?
¿Se necesita ocho respuestas para explicar lo que es un puntero a una puntero es? –
@Andreas La gente salta sobre las preguntas triviales, porque obtienen muchas vistas (106 hasta ahora) y, por lo tanto, muchos votos ascendentes. Por lo tanto [16 votaciones ascendentes en 17 minutos] (http://stackoverflow.com/questions/2893129/what-does-mean-in-c/2893145#2893145) para una respuesta relativamente básica –
posible duplicado de [Usos para múltiples niveles de desreferencias del puntero?] (http://stackoverflow.com/questions/758673/uses-for-multiple-levels-of-pointer-dereferences) –