读书人

【大家帮忙看一上这个函数】

发布时间: 2012-09-10 11:02:32 作者: rapoo

【大家帮忙看一下这个函数】

C/C++ code
#include<stdio.h>#include<time.h>int main(){    int a;    int t,s;    for(a=0;;a++)    {        t=time(0);                printf("%d\n",a);                  while (t==time(0))        {            ;                }     }}

怎么就可以起到延时的作用呢 这个 time(0)得出的不是11位的永远不重复的值么?

[解决办法]
The time() function shall return the value of time in seconds since the Epoch

此函数最小单位是秒, 所以while的作用是过了这一秒的时间,达到延时。


[解决办法]
C/C++ code
#include<stdio.h>#include<time.h>int main(){    int a;    int t,s;    for(a=0;;a++)    {        t=time(0);//获得当前的秒数                printf("%d\n",a);                  while (t==time(0))       //获得当前的秒数,       //若等于t,则说明还在一秒内,time(0)没有变化,执行while空循环;       //若不等于t,则说明time(0)已跳到下一秒,执行循环了,开始下一个for循环,a++,       //这样就实现了两次输出间隔一秒。        {            ;                }     }}
[解决办法]
不过这种延时实现 太霸道太消耗CPU了吧

读书人网 >C语言

热点推荐