我一直在编写一些简单的东西,例如打印语句,但我想让我的处理器睡不着,同时没有太多的打印语句。 我使用了库 unistd.h 并使用了函数 sleep()。 我遇到的问题是,当我要求睡眠功能睡眠时间少于一秒时,就像0.9一样打印相同数量的语句,好像我根本没有使用函数 sleep()一样。 如果我让它睡眠超过一秒,它工作正常,但我不想睡一秒,我想要更少。
请你帮忙阅读和/或帮助。
答案 0 :(得分:5)
如果您阅读the sleep
manual page,您会看到以秒为单位的时间为整数。
如果在期望整数值时使用浮点值,编译器将截断它。例如,浮点值0.9
将被截断为整数0
。
所以你正在做的事情是sleep(0)
。
同样在the sleep
manual page上(至少在Linux手册页上),您会看到指向the nanosleep
function的链接。