【发布时间】:2014-02-17 14:50:49
【问题描述】:
#include<stdio.h>
#include<conio.h>
void change(int *);
int main()
{
int a[5] = {1,2,3,4,5};
int i;
clrscr();
change(a);
for(i=4;i>=0;i--)
{
printf("%d\n",a[i]);
}
getch();
return 0;
}
void change(int *b)
{
int i;
for(i=0;i<=4;i++)
{
b=*b+1; //showing nonportable pointer exception
b++;
}
}
输出不符合预期,没有错误和 1 个警告....
预期输出:65432
当前输出:54321
【问题讨论】:
-
也许如果你真的阅读并试图修复警告...
b = *b + 1应该是*b = *b + 1或者只是@987654324 @.
标签: c arrays exception pointers warnings