Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Tharivol

significado das atribuiçoes

Recommended Posts

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

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

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.