同样的程序用VS2008和VC6.0输出的结果为什么不一样?
贴代码,很短的,大家来帮帮忙啊:
#include "stdio.h"
int main(){
char a[]="abcdefg",b[8],*pa;
int i,n;
pa=a;n=0;
for(i=0;*(pa+i)!='\0';i++){
if(i%2==0)
b[n++]=*(pa++);
}
b[n]='\0';
printf("%s\n",b);
}
VS2008输出:abcde
VC6.0 输出:abcd
帮帮忙找找问题 ,谢谢啊 VC vs2008 printf 不同 相同
[解决办法]
b[n++]=*(pa++);这句貌似是未定义的。b[n++]的解释依赖编译器
[解决办法]
http://bbs.csdn.net/topics/370153775
[解决办法]