|
本帖最后由 rosynirvana 于 2013-3-2 17:22 编辑
fengzhenging 发表于 2013-3-2 16:05
百科了一下gcc,发现其不止支持windows,更主要是在unix系统上运行,猜测sleep语句只能在windows上运行, ...
语句能不能运行要看编译器的“实现”
windows和unix两个系统都提供了相应的system call
sleep()或是Sleep(),都会被转换成相应的system call来处理
究其原因是mingw GCC(win下面移植版的gcc)废弃了sleep(),但是保留了声明在windows.h中的Sleep()
所以现在只能用Sleep()
在一个UNIX系统下,由于POSIX标准的要求,sleep()是一定能用的
如果要问UNIX系统下面能不能用Sleep(),这取决于编译器的实现,通常来说,是不能用的
如果说编译好的exe文件能不能搬到UNIX下面用,回答是不能
现代UNIX系统使用ELF格式的可执行文件,而windows使用PE格式的可执行文件,所以不能通用 |
|