题一:#include void main() { int a=8,i=5,j=5,c=1,d=10,p,q; p=(i++)+(i++)+(i++); q=(++j)+(题一:#includevoid main(){int a=8,i=5,j=5,c=1,d=10,p,q;p=(i++)+(i++)+(i++);q=(++j)+(++j)+(++j);printf("%d,%d,%d,%d\n",p,q,i,j);}此代码在TC下编译,q

来源:学生作业帮助网 编辑:六六作业网 时间:2024/12/24 00:48:36
题一:#includevoidmain(){inta=8,i=5,j=5,c=1,d=10,p,q;p=(i++)+(i++)+(i++);q=(++j)+(题一:#includevoidmain()

题一:#include void main() { int a=8,i=5,j=5,c=1,d=10,p,q; p=(i++)+(i++)+(i++); q=(++j)+(题一:#includevoid main(){int a=8,i=5,j=5,c=1,d=10,p,q;p=(i++)+(i++)+(i++);q=(++j)+(++j)+(++j);printf("%d,%d,%d,%d\n",p,q,i,j);}此代码在TC下编译,q
题一:#include void main() { int a=8,i=5,j=5,c=1,d=10,p,q; p=(i++)+(i++)+(i++); q=(++j)+(
题一:
#include
void main()
{
int a=8,i=5,j=5,c=1,d=10,p,q;
p=(i++)+(i++)+(i++);
q=(++j)+(++j)+(++j);
printf("%d,%d,%d,%d\n",p,q,i,j);
}
此代码在TC下编译,q的值为24,而在VC下为22;
题二:
#include
main()
{
int i=8;
printf("%d %d %d %d %d %d\n",++i,--i,i++,i--,-i++,-i--);
}
此代码在TC下编译结果为:8 7 7 8 -7 -8,而在VC下为8 7 8 8 -7 -8
请问这是什么原因,是我的VC编译器有问题?
还有 int a,b;
b=sizeof(a);
在TC是2,在VC是4

题一:#include void main() { int a=8,i=5,j=5,c=1,d=10,p,q; p=(i++)+(i++)+(i++); q=(++j)+(题一:#includevoid main(){int a=8,i=5,j=5,c=1,d=10,p,q;p=(i++)+(i++)+(i++);q=(++j)+(++j)+(++j);printf("%d,%d,%d,%d\n",p,q,i,j);}此代码在TC下编译,q
呵呵,关于++前缀和后缀的问题,编译环境不同,结果是不同的,你没有错;只是你用了不同的编译环境...结果不同时很正常的事情,有的编译器是从右至左来运算的,而有的编译器是从左至右来算的,结果当然是不同的...