⑴ 同一个C++程序为什么在两个相同的VS2008编译器上运行的结果不一样,非常之急,在线等!
貌似如果是windows程序就必须该设置,例如在网上下了一个小程序,里面只有CPP文件和一个resource.h,这是一个WinMain程序,懒得建立一个win32工程,直接上来就打开CP文件进行build,编译器报告上面的错误(如题).
原因: VC++此时假定你要建立Console程序而不是GUI程序,而Console程序的Startup Code要载入的是main()而不是Winmain(),导致连接失败。
改正的方法: 将菜单Project/Settings下Link项Option内的/subsystem:console改为/subsystem:windows。另外也可以先New一个Win32 GUI Project,再拷贝入你的程序,再Build。
⑵ C语言同一段代码,同样的文件,编译器为什么运行结果不一样
有如下几种可能:
1 代码运行的平台硬件不同。
不同的CPU,如嵌入式CPU,intel CPU,以及IBM的CPU,在硬件最底层就是不同的,而C语言是一门和底层相关性极大的语言,在不同的硬件上运行出不同结果是很正常的。
2 代码运行的系统不同。
相同CPU在不同操作系统上跑相同代码时,一样会出现不同的结果。这是由于系统底层的实现不同造成的。比如Linux和Windows,在底层处理上就有一定的差异。
3 编译器不同,同时代码中使用了C规范未定义规则的语句。
C语言规范并没有对C语言的所有行为做定义,所以相同语句,不同编译器的运行效果可能有所不同。比如同样的sizeof(int),在16位编译器上结果为2,而32位编译器上就会是4。
4 代码获取到的外部数据不同。
比如运行代码时获取到的其它输入不同,包括程序中获取的环境变量,实时信息,以及各种外部输入等,均有可能出现不同。
比如在做随机数时,如果以当前时间设定随机数种子,由于每次的时间是不同的,同一个程序每次运行的结果都是不同的。
⑶ 一个C++小程序,在不同编译器里运行结果不一样,怎么回事
r和c都没有初始化,你就while(++r)了,当然结果不一样。
在这种情况下,一般r,和c是随机值,但一般是编译器给的一个负数。
int r=0;
int c=0;
⑷ 为什么c语言在不同编译器运行结果不一样
这种代码本来就是不严谨的,i++只是说当前表达式计算结束后再自增
三个i++啥时候对i自加呢?
这种表达式都是一些水平不行的”教授“写的教程带来的垃圾书,扔了吧
⑸ 同一代码在不同编译器上显示不同
出来结果不是看运行的机器是多少位,而是看这个程序是多少位的,即使你的机器是64位出来的结果还是这样
你用tc这个16位编译器,出来的是16位程序,那么里面的东西都是按照16位来的
你用vc按32位进行编译,出来的是32位程序,那么里面的东西都是按照32位来的
相信你是自己明白为何16和32位出来不同结果,我也不解释了
计算机多少位的你可以下载个CPU-Z进行查看,还能看出操作系统多少位
计算机多少位 操作系统多少位 程序多少位 都是不同的概念
我的机器64位 操作系统32位 可以运行多数的32位 和 16位 windows或dos程序,但是一般的64位程序运行不了,因为操作系统只有32位。
⑹ C++为什么在vc++6.0与c++ builder6.0这两种环境中的编程界面不同呢
VC也有可视化的环境
微软的MFC就是提供了可视化的环境
其中基于对话框的程序和VB很相像
VC其实并不是完全的可视化开发环境
如果你要写出好的windows程序
需要精通C++语言和OOP方法以及了解windows系统的相关知识
比VB复杂的多 但是比VB强大而且性能上要好
C++和C最大的不同就是C++有了面向对象的特性
如果你是初学C++ 先要熟悉面向对象的程序设计思想
有了思想 用什么开发环境是次要的
⑺ 为什么汇编代码在不同编译器上结果不一样
也许是masm版本不同引起的,高版本功能更强、会进行某些优化。
另,有些功能,在汇编中也会有不同的实现方式;再,高版本对伪指令的用法也许进行优化调整。
⑻ C语言同一段代码,同样的文件,编译器为什么运行结果不一样
一般来说,C语言程序被编译为可执行程序后,每次都输出都是相同的,但有些特殊情况例外,比如,代码中引入了随机变量,并让它出现在输出结果中。
⑼ 为什么相同的代码相同的编译器在不同电脑上的运行结果不同
函数f1中的变量c,你在未初始化的情况下就使用了,就是这句while(c!=0)。这时c的值是不确定的。
⑽ python官网的编译器怎么和图中相差这么多
官网上的编译器也有一个输出信息的区域。你要打开idle,而不是直接打开python。
打开idle后界面虽然与codecademy界面不太一样。不过大体上输出也有。编辑文件的功能也有。输出信息在console窗口里,编辑在编辑器的窗口里。你自己可以拖动,让它更象是网校里的界面。