小程序 指针求解!
#include "stdio.h"void main(){ int *p=NULL,*q=NULL,*t=NULL; int i=0; p=&i; q=p; for (i=0;i<10;i++) { p=&i; p++; } for(i=0;i<10;i++) printf("%d ",q); printf("\n"); for(i=0;i<10;i++) printf("%d ",*q); printf("\n%d ",*(q+1)); printf("\n%d ",*(q+2)); printf("\n%d ",*(q+3)); printf("\n%d ",*(q+4)); printf("\n%d ",*(q+5)); printf("\n%d ",*(q+6)); //t=&(q[3]);// printf("\n%d",(*t));}
p=&i; q=p; for (i=0;i<10;i++) { p=&i;//·····这里写的好难理解哦 p++; }
[解决办法]
呵呵,你在初始化时,指针已经指向最后了。下面再操作这个指针,必须回到起始位置。。。例如刚开始p=q;
初始化完成后,再p=q;这样就回到起始位置了。。明白了吧?