A. C语言不同编译器的程序不一样
各种编译器遵循的代码标准有差异,所以处理代码的时候会有差异
B. C语言的编译器为什么有许多不同的版本并且在不同的编译器版本下C语言的语法规则也不尽相同
新的版本都是基于旧的版本升级过来的,以此来改善编译器的性能、增加对新平台的支持以及提高竞争能力。
不同的编译器支持的标准语法是一致的(不然没资格称C编译器),但是每个编译器自身可以添加额外的语法、库来扩展语言的表达能力,这就是所谓的xx编译器扩展。使用语言扩展通常能获得较高的性能和灵活性,但是损失了跨平台性。
不仅仅是编译器有很多版本,语言本身都有很多版本,目前C语言的版本是C11,下一个版本为C1y。
C. 用C语言写了一个程序,如图。请问为什么用不同编译器执行同样代码,结果不同
把 这一句: int b = b + 1;
改为 b = b + 1;
结果就一样了
因为你在while中重新定义了变量b,但是没有给b赋值,b的值是随机的,有可能出现任何值
D. 用c语言写程序,同样的代码,为什么编译时间每次都不一样
这个编译器内部有预编译的东西,所以时间不一样,而且计算机的内存,后台进程不一样,时间也就不一样了
E. c语言,不同的编译器会得出不同的结果
应该是2 12 30
这里是典型的宏定义的负效应
S(i++)代换完就是(i++)*(i++)
不管按照什么次序,比如
i=1, 先算i++返回1,而i的值变成了2,后面一个i++,返回2,则i的值变成了3
以下类推
F. C/C语言。每个编译器构建出的exe大小不一样的啊大好还是小好哪个编译器什么版本最好呢
大小要看编译器使用的实际指令序列。
不同的编译器有不同方案,同一种编译器也有多种方案。
例如,有尺寸最小的指令方案,有执行速度最快的方案等等。
哪种方案最好,要看你在实际使用中注重那种特征。
G. C语言的编译器是不是都一样
不一样,支持的语言特性不同,编译出的代码效率不同。当然,还有就是编译出的程序在不同的系统上跑的。比较好的c编译器就是gcc和vc了。这两是x86上用的最多的c编译器还有像Intel的ICC也不错,优化很好。
H. 为什么我的C语言编译系统和别人的程序输出的答案不一样呢
看图,你的程序没有问题呀…………
你输入数的方式有问题。
输入数时:a,b逗号前后紧紧接着数字,不可以有空格!
或者scanf("%d,%d",&a,&b);
改为scanf("%d%d",&a,&b);
用空格分隔两个数输入!!!
I. C语言代码在不同编译器下运行结果不同,请问原因
可以把fflush(stdin); 删掉,有时候把这个删掉就行了。scanf("%c", &ch);换成ch=getchar();应该就行了。
至于两个编译器不一样的情况,这是肯定会有的,毕竟是两个不同的编译器。