c语言指针

例一:

#include <stdio.h>
int main()
{
 int a=100,b=200;
 int *p1=&a,*p2=&b;
 
 printf("%d,%d\n",a,b);
   printf("%x,%x\n",&a,&b);
   printf("%x,%x\n",p1,p2); //虽然上面  *p1=&a ,那也就是 *p1才是地址。而事实上,上面那个是定义,不是等于。也就说p1为地址,*p1为指向地址的内容。
   printf("%d,%d\n",*p1,*p2); 
 
}

-----------------------------------

总结:*p1=&a 相当于

int *p1;

p1=&a;

确实很别扭。

例二:

#include <stdio.h>
int main()
{
 int a=100,b=200;
 int p1=&a,p2=&b;  //变化的是这里
 printf("%d,%d\n",a,b);
   printf("%x,%x\n",&a,&b);
   printf("%x,%x\n",p1,p2);//虽然上面  *p1=&a ,那也就是 *p1才是地址。而事实上,上面那个是定义,不是等于。也就说p1为地址,*p1为指向地址的内容。
   //printf("%d,%d\n",*p1,*p2);
}

posted @ 2014-10-22 16:00  kin2321  阅读(105)  评论(0编辑  收藏  举报