导航:首页 > 源码编译 > c语言编译器中的结果

c语言编译器中的结果

发布时间:2023-05-04 19:07:59

1. C语言同一段代码,同样的文件,编译器为什么运行结果不一样

一般来说,C语言程序被编译为可执行程序后,每次都输出都是相同的,但有些特殊情况例外,比如,代码中引入了随机变量,并让它出现在输出结果中。

2. 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语言编译器中的结果相关的资料

热点内容
怎么把钉钉文件夹保存到手机里 浏览:69
兵法pdf 浏览:643
app格式化下载不起怎么办 浏览:34
信捷加密文件是干嘛用的 浏览:952
su模型下载怎么解压不了 浏览:182
国际体验服如何把服务器改为亚服 浏览:880
手机怎么关闭视频加密 浏览:462
单片机编程存表法 浏览:719
富士康服务器是什么 浏览:452
编译是二进制吗 浏览:262
小程序账号登录源码 浏览:876
云南社保局app叫什么 浏览:697
美女程序员吃大餐 浏览:210
项目二级文件夹建立规则 浏览:560
dns使用加密措施吗 浏览:174
php独立运行 浏览:535
手机sh执行命令 浏览:731
云服务器的角色 浏览:737
单片机频率比例 浏览:845
我的世界服务器如何关闭正版验证 浏览:508