Tharivol 0 Denunciar post Postado Dezembro 1, 2011 olá galera... me debati com uma duvida... fiz uma lista com algumas atribuiçoes de ponteiros e gostaria de recber a resposta... alguns já estao com a descriçaos por favor se puderem completar para mim agradeceria.. só compliar! #include <stdio.h> #include <conio.h> int main (){ int a, *p; a=5; p=&a; printf("%d \n", *p);// Mostra o valor de a printf("%d \n", p);// Mostra o ndereço de memoria - confirma e veja - da certo?? printf("%d \n", &a);// ?????? printf("%d \n", &p);// ?????? printf("%p \n", &a); // Mostra o endereço de memoria de A printf("%p \n", &p);// Mostra o endereço do ponteiro p memoria de *p printf("%p \n", p);// Mostra o endereço de a printf("%p \n", *p);// ?????? printf("%p \n", a); // ?????? getch(); return 0; } Compartilhar este post Link para o post Compartilhar em outros sites
guidjos 65 Denunciar post Postado Dezembro 1, 2011 Seguem as consequências de cada chamada: int a = 5, *p = &a; printf("%d \n", *p); // valor de a printf("%d \n", p); // perigoso - ponteiros podem não ser representados corretamente como inteiros printf("%d \n", &a); // o mesmo que acima printf("%d \n", &p); // o mesmo que acima printf("%p \n", &a); // Parcialmente correto - deveria ser printf("%p", (void *) &a); printf("%p \n", &p); // printf("%p", (void *) &p); -- imprime o endereço de p printf("%p \n", p); // printf("%p", (void *) p); -- endereço de a printf("%p \n", *p); // tenta converter o valor de a, que tem tipo (int), para (void *)... printf("%p \n", a); // o mesmo que acima Sugiro que leia: http://guipn.com/cpa.htm Compartilhar este post Link para o post Compartilhar em outros sites