例如我可以让它输入类似的内容
"Hello"
"This"
"Is"
"A"
"Test"
每条新行之间间隔 1 秒?
谢谢,
嗯,
sleep()
函数就可以做到这一点,有多种使用方法;
在 Linux 上:
#include <stdio.h>
#include <unistd.h> // notice this! you need it!
int main(){
printf("Hello,");
sleep(5); // format is sleep(x); where x is # of seconds.
printf("World");
return 0;
}
在 Windows 上,您可以使用 dos.h 或 windows.h,如下所示:
#include <stdio.h>
#include <windows.h> // notice this! you need it! (windows)
int main(){
printf("Hello,");
Sleep(5); // format is Sleep(x); where x is # of milliseconds.
printf("World");
return 0;
}
或者你可以使用 dos.h 进行 Linux 风格的睡眠,如下所示:
#include <stdio.h>
#include <dos.h> // notice this! you need it! (windows)
int main(){
printf("Hello,");
sleep(5); // format is sleep(x); where x is # of seconds.
printf("World");
return 0;
}
这就是你在 Windows 和 Linux 上使用 C 语言睡眠的方式!对于 Windows,两种方法都应该有效。只需将秒数的参数更改为您需要的值,然后在需要暂停的地方插入,就像我在 printf 之后一样。 另外,注意:使用windows.h时,请记住sleep中的大写
S
,也就是它的毫秒! (感谢克里斯指出这一点)
不像 sleep() 那么优雅,但使用标准库:
/* data declaration */
time_t start, end;
/* ... */
/* wait 2.5 seconds */
time(&start);
do time(&end); while(difftime(end, start) <= 2.5);
我将留给您找出
#include
、time_t
和 time()
的正确标题 (difftime()
) 以及它们的含义。这是乐趣的一部分。 :-)
您可以查看 sleep() 它将线程挂起指定的秒数。
这应该适用于所有系统,因为它使用标准库
time.h
。
#include <time.h>
void wait_s(int seconds) // waits for "seconds" seconds
{
clock_t start_time = clock();
while (clock() < start_time + seconds*1000);
}
您也可以使用
float seconds
。
如果您更喜欢毫秒,请使用此:
#include <time.h>
void wait_ms(int milliseconds) // waits for "milliseconds" ms
{
clock_t start_time = clock();
while (clock() < start_time + milliseconds);
}
你的代码可能是这样的
int main(){
printf("Hello,");
wait_s(5);
printf("World");
return 0;
}
最简单的方法是循环。无论是 while 还是 for 循环
int main()
{
while(i<100000) //delay
{
i++;
}
}
适用于所有操作系统
int main()
{
char* sent[5] ={"Hello ", "this ", "is ", "a ", "test."};
int i =0;
while( i < 5 )
{
printf("%s", sent[i] );
int c =0, i++;
while( c++ < 1000000 ); // you can use sleep but for this you dont need #import
}
return 0;
}