Foros del Web » Programación para mayores de 30 ;) » C/C++ »

duda punteros

Estas en el tema de duda punteros en el foro de C/C++ en Foros del Web. bien me han surjido unas cuantas dudas sobre los punteros. por ejemplo: int i,j=25; int *pi, *pj=&j; *pj=j+5; i=*pj+5; pi=pj; *pi=i+j;//aqui *pi vale 60????...
  #1 (permalink)  
Antiguo 09/12/2007, 12:03
 
Fecha de Ingreso: noviembre-2004
Mensajes: 149
Antigüedad: 19 años, 5 meses
Puntos: 0
duda punteros

bien me han surjido unas cuantas dudas sobre los punteros.
por ejemplo:
int i,j=25;
int *pi, *pj=&j;
*pj=j+5;
i=*pj+5;
pi=pj;
*pi=i+j;//aqui *pi vale 60????
__________________
¨`~*'¤^v-¥-()->»[: "3£ 1NƒîêRNø Nø ê$ UN Må£ £UGåR" :]«<-()-¥-v^¤'*~´¨
  #2 (permalink)  
Antiguo 09/12/2007, 12:17
Avatar de TolaWare
Colaborador
 
Fecha de Ingreso: julio-2005
Mensajes: 4.352
Antigüedad: 18 años, 10 meses
Puntos: 24
Re: duda punteros

Vamos por pasos:
(Abajo de cada instrucción te marco el estado de las variables luego de ejectura la instrucción, marco con rojo los cambios con respecto al estado anterior).

Primero:
int i,j=25;
i= cualquier cosa
j=25


Segundo:
int *pi, *pj=&j;
i= cualquier cosa
j=25
pi: apunta a cualquier lado
pj: apunta a la variable j


Tercero
*pj=j+5;
i= cualquier cosa
j = 30
pi: apunta a cualquier lado
pj: apunta a la variable j

Cuarto:
i=*pj+5;
i= 35
j = 30
pi: apunta a cualquier lado
pj: apunta a la variable j

Quinto:
pi=pj;
i= 35
j = 30
pi: apunta a la variable j
pj: apunta a la variable j

Sexto:
*pi=i+j;
i= 35
j = 65
pi: apunta a la variable j
pj: apunta a la variable j

La respuesta es NO. El puntero pi apunta a la variable j cuyo valor es 65
  #3 (permalink)  
Antiguo 09/12/2007, 12:35
 
Fecha de Ingreso: noviembre-2004
Mensajes: 149
Antigüedad: 19 años, 5 meses
Puntos: 0
Re: duda punteros

vale, creo que ya lo voy entenidendo mejor, muchas gracias por contestar!!!!
__________________
¨`~*'¤^v-¥-()->»[: "3£ 1NƒîêRNø Nø ê$ UN Må£ £UGåR" :]«<-()-¥-v^¤'*~´¨
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:45.