新闻  |   论坛  |   博客  |   在线研讨会
指针梦魇
sky2009 | 2010-09-04 16:36:12    阅读:978   发布文章

程序在vc++ 6调试的
如下包括了数组,指针,指针数组,指向指针的指针。

指针变量x,y 其实就是地址这个在这样的模式下x=&i;非常直观
如下的x和y这样的指向整形数据的指针变量还是比较容易理解。给他们本身的就是变量的地址,很长一段时间都在书里的内容中困惑,当然现在自己的理解也不一定完全对,希望大家多给点意见.

#include<stdio.h>
swap(int *p1,int *p2);
test();

void main()
{ int a[4],i,max,min;
int *p[4],*x;
int **q,*y;
  // a[4]={1,2,3,4};

for (i=0;i<4;i++)
  {
   a[i]=i;
  }
max=a[0];
min=a[0];
for (i=0;i<4;i++)
  {if (max<a[i])
   max=a[i];
  }

for (i=0;i<4;i++)
  {if (a[i]<min)
   min=a[i];

  }
  printf("max is %d,min is %d\n",max,min);
  for (i=0;i<4;i++)
  {
  p[i]=&a[i];
  }
  q=p;
    for (i=0;i<4;i++)
  {
  printf("%d\n",**q);
  printf("%d\n",*q);//1310576
  printf("%d\n",q);//1310548
   q++; }

 i=5;
 x=a;   //x=&i;
 y=x;
  printf("%d\n",*(y+0));
  printf("%d\n",y);//1310576
 }

swap(int *p1,int *p2)
{int t;
 t= *p1;
 *p1=*p2;
 *p2=t;}

test()
{
int a,b;
int *p3,*p4;
a=5;
b=9;
p3=&a;
p4=&b;
if(a<b)
swap(p3,p4);
printf("%d,%d",a,b);
}

}

*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
学习,继续学习,希望下次做得更好~
推荐文章
最近访客