Ver Mensaje Individual
  #1 (permalink)  
Antiguo 01/04/2010, 02:08
Avatar de jose_desa
jose_desa
 
Fecha de Ingreso: marzo-2010
Mensajes: 19
Antigüedad: 14 años, 8 meses
Puntos: 0
Pregunta Dudas sobre punteros

Por que es permitido inicialzar un puntero de tipo char asi:

char *nom="Jose";

si se supone que yo solo puedo inicilizar un apuntador de 4 maneras (que yo conosco)

1. Con el apuntador Nulo char *nom=NULL;
2. Con la direccion de otra variable char *nom=&n;
3. Con el operador New char *nom=new char;
4. Con otro apuntador char *nom=apell;

bueno esa seria una de mis dudas, la otra duda que tengo que se relaciona es:

Por que cuando yo hago lo siguiente:

Código C++:
Ver original
  1. char text="Good morning!"; // o asi char text[14]={'G','o','o','d',' ','m','o','r','n','i','n','g','!','\0'},
  2.  
  3. char *cPtr=&text[0];  // o asi   char *cPtr=text;
  4. cout<<cPtr; //aqui me muestra  Good morning!
  5. cout<<*cPtr; //aqui muestra la G
  6. cout<<*(cPtr+3); //muestra la letra d
  7. cout<<cPtr+3; //muestra d morning!

Mi duda es en la linea 4 y 7 por que el nombre del puntero me regresa el contenido del arreglo si se supone que el puntero contiene la direccion, por ejemplo si hago lo siguiente:

Código C++:
Ver original
  1. int x[4]={56,87,6,32};
  2. int *y=x;
  3. cout<<y;   // aqui me regresa la una direccion no el contenido como en el char

Otra duda, cuando yo quiero mostrar la direccion a la que apunta un puntero solo tengo que poner el nombre de mi puntero en un cout como:
Código C++:
Ver original
  1. int x=5;
  2. int *y=&x;
  3. cout<<y;  // aqui me mostraria la direccion como 0x003751E4
  4. cout<<*y; //haria esto, si quisiera mostra el contenido de la direccion a la que apunta 5
pero si hago esto con un puntero a char pasa lo siguiente:

Código C++:
Ver original
  1. char n="como te llamas";
  2. char *text=n;
  3.  
  4. cout<<text; // aqui me muestra directamente el contenido de la direccion a la que apunta "como te llamas"
  5.  
  6. cout<<*text; //aqui me muestra la letra c;

mi pregunta es, como puedo saber la direccion que a la que apunta text.

Bueno estas son mis dudas espero haberme dado a entender, y se los agradezco de antemano a aquellos que me contesten, gracias.

Última edición por jose_desa; 01/04/2010 a las 14:30 Razón: mejor presentacion