august 发表于 2008-3-20 23:44:48

指针赋值问题

本以为指针现在有点进步了,没想到又来了...

int i,s;
int *p;
p=s;
for(i=0;i<5;i++)
{
         *p=2*i;
         p++;
}
for(i=0;i<5;i++)
{
         printf("%d\t",*p++);
}

为什么这样得不到正确的值呢?

shawind 发表于 2008-3-21 08:00:59

这样就没有问题了。

#include "stdio.h"

void main(){
    int i, s;
    int *p;
    p = s;
    for(i=0; i<5; i++){
      *p=2*i;
      printf("%d\\n",*p++);
    }
    printf("--------------------\\n");
    p = s;//p重新指向s的第一个元素
    for(i=0; i<5; i++){

      printf("%d\\n",*p++);
    }
}

august 发表于 2008-3-21 10:53:05

請用鞭子抽我吧!!!!!
页: [1]
查看完整版本: 指针赋值问题