Diferencia entre revisiones de «Programación en C++/Punteros»

Contenido eliminado Contenido añadido
Línea 33:
=== Punteros y vectores (arrays) ===
NO HAY INFO JOVEN :V
Así como también podría escribirse
<source lang="cpp">
NO HAY INFO JOVEN :V
int X[15];
int *ptrX;
ptrX = &X[0]; // ptrX es igual a la dirección del primer elemento de X
</source>
 
NO HAY INFO JOVEN :V
Se pueden utilizar distintos elementos del vector teniendo en cuenta la sintaxis de punteros.
<source lang="cpp">
NO HAY INFO JOVEN :V
int X[15], Y, *ptrX;
ptrX = X;
 
Y = *( ptrX + 7 );
</source>
NO HAY INFO JOVEN :V
En este caso puede verse que Y toma el valor del elemento 7 del vector X, siendo 7 el desplazamiento dentro del vector. El operador de indirección queda fuera del paréntesis porque tiene una prioridad superior a la del operador +. De no existir los paréntesis, se sumaria 7 al elemento X[0].
Teniendo en cuenta que los vectoresson punteros constantes, el nombre del vector puede tratarse como un puntero:
<source lang="cpp">
Y = *( X + 7 );