[C con Clase] duda de punteros

Programante programante en gmail.com
Lun Sep 13 19:13:38 CEST 2010


 El 13/09/10 01:35, Jose Ramon Dominguez Barba escribió:
> Buen dia Manuel...
>  
> No se si estes tamando un curso, pero por mis pocos conocimeintos
> adquiridos por el tiempo, se que cuando vas a darle una variable a un
> apuntador lo tienes que indicar con & (amperson) el cual indica
> direccion o da direccion
>  
>  en este caso char *cadena2 = "Cadena 2"; seria:  char *cadena2 =
> &Cadena 2;
>  
> char a[10];
> char *b=&a;//puntero que apunta a 'a'
>
> La sintaxis anterior si esta bien, ya que le das la direccion del
> arreglo a a apuntador *b....

Un char a[10]; es equivalente a tener un:
char *a = malloc(10);
con la diferencia que no necesitas hacer un free(), porque está todo en
la pila (y sizeof devuelve distintos valores)

por lo que puedes asignar directamente char* b = a; aunque sea un array.
En realidad, a y &a devolverán el mismo valor en ese caso concreto (en
camibo si lo definieras como char *a, &a sería diferente: un puntero al
puntero).

------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.conclase.net/pipermail/cconclase_listas.conclase.net/attachments/20100913/0b4810ce/attachment.html>


Más información sobre la lista de distribución Cconclase