导航:首页 > 源码编译 > 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语言编译器中的结果相关的资料

热点内容
燕窝溯源码标签多大 浏览:284
linux解压tar包命令 浏览:879
东方财富app怎么统计区间涨幅 浏览:944
安卓手机怎么限制应用使用数量 浏览:189
司法三大本pdf 浏览:179
程序员掉头发配图 浏览:490
命令与征服本传哪个好 浏览:276
linux系统的基本操作 浏览:995
php能实现p2p 浏览:640
linux和dos命令 浏览:13
javachar初始化 浏览:547
编译原理复习百度 浏览:686
程序员记事本推荐 浏览:467
python淘宝数据统计 浏览:59
当程序员看视频要vip 浏览:291
华为方舟编译平台 浏览:347
java执行cmd命令 浏览:730
加密解密的毕设方向 浏览:631
c语言如何编译交通灯 浏览:797
360程序员好找吗 浏览:415