c++等待一秒_cmd等待一秒钟
求一个AutoHotkey脚本,意思是首先执行一次a键,等待1秒执行一次b键,等待1秒后无限循环c键!
{ COORD coord;;;F12启动, F11停止(按住一会)
c++等待一秒_cmd等待一秒钟
c++等待一秒_cmd等待一秒钟
F12::
Send,a
SledfMinusep,1000
Send,b
Sleep,1000
Loop
{if GetKeyState("F11","P")
Break
Send,c
Sleep,1000
}Return
C#怎么实现先执行一个函数,等待1秒钟,再执行一个函数。
获得计数器的时钟频率要实现这样地函数不难就是写两个线程,要不然你也可以获取当前系统时间,等时间+1秒地时候执行另一个函数
#include如果用WinForm程序,可以考虑用Timber组件,它简单易用
用Thread.Sleep()示例:
private void button1_Click(object sender, EventArgs e)
{A();
}private void A()
{B();
Thread.Sleep(1000);
C();
}private void B()
{}
private void C()
{}
希望回答对你有帮助。
先执行的函数要不要执行完 等一秒 ,再执行下一个函数啊?
要是的话 就得在函数内加上Thread.Sleep(1000) ;
否则就在函数体外部加上Thread.Sleep(1000)
using System.Threading;
直接用需要加上上面那个头文件
C语言中的sleep() 函数
关于sleep()函数在windows系统和linux系统下是两个不同的函数,别较大,但功能是相同的,都是将进程挂起一段时间。
windows系统下函数名为Sleep(),其函数原型为:
#include
void Sleep(DWORD dwMilliseconds); 参数为毫秒
参考代码:
#include
#include
int main()
{int i;
printf("你");
fflush(stdout); //强制刷新缓存,输出显示
for( i=0;i<10;i++ )
{Sleep(1000); / windows 使用Sleep,参数为毫秒 /
printf(".");
fflush(stdout);//强制刷新缓存,输出显示
}printf("好
"); /输出“你”和“好”之间会间隔10秒,并输出10个点/
return 0;
}linux系统下函数名为sleep(),其函数原型为:
#include
unsigned int sleep(unsigned int seconds);参数为毫秒 (如果需要更可以用usleep,单位为微秒)
修改上面的代码,以适应linux系统
#include
#include
int main()
{int i;
printf("你");
fflush(stdout);//强制刷新缓存,输出显示
for( i=0;i<10;i++ )
{sleep(1); /2、linux 使用sleep,参数为秒/
printf(".");
fflush(stdout);//强制刷新缓存,输出显示
}printf("好
"); /输出“你”和“好”之间会间隔10秒,并输出10个点/
return 0;
是小写的sleep,说明如下
NAME
sleep - Sleep for the specified number of seconds
SYNOPSIS
#include
unsigned int sleep(un}signed int seconds);
DESCRIPTION
sleep() makes the calling process sleep until seconds seconds he elapsed or a signal arrives which is not ignored.
RETURN VALUE
Zero if the requested time has elapsed, or the number of seconds left to sleep.
CONFORMING TO
POSIX.1-2001.
windows下需要"#include
linux/unix下需要"#include
#include
Sleep(1000); -- 睡 1 秒
Sleep()需要#include
加上"#include
你可以试试把main前面改成void
其中有四个大括号你可以试着改成[
]for(int j=0;j<=10;j++){这种形式。
c语言怎么表示每3秒停一秒
用windows库函数
dfFreqSleep(1000);表示暂停1秒!然后你根据你的程序来写吧
希望帮到你哈
用windows库函数
Sleep(1000);表示暂停1秒,然后你根据int y; //食物的y坐标你的程序来写。
c语言小游戏代码
“贪吃蛇”C代码,在dev C++试验通过(用4个方向键控制)
#include
#include
#include
#include
#include
#define W 78 //游戏框的宽,x轴
#define H 26 //游戏框的高,y轴
int dir=3; //方向变量,初值3表示向“左”
int Flag=0; //吃了食物的标志(1是0否)
int score=0; //玩家得分
struct food{ int x; //食物的x坐标
}fod; //结构体fod有2个成员
struct snake{ int len; //蛇身长
int speed; //移动速度
int x[100]; //蛇身某节x坐标
int y[100]; //蛇身某节y坐标
}snk; //结构体snk有4个成员
void gtxy( int x,int y) //控制光标移动的函数
coord.X=x;
coord.Y=y;
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), coord);
}void gtxy( int x,int y); //以下声明要用到的几个自编函数
void csh( ); //初始化界面
void keymove( ); //按键作移动蛇
void putFod( ); //投放食物
int Over( ); //游戏结束(1是0否)
void Color(int a); //设定显示颜色的函数
int main( ) //主函数
{ csh( );
while(1)
{ Sleep(snk.speed);
keymove( );
putFod( );
if(Over( ))
{ (“cls”);
gtxy(W/2+1,H/2); printf(“游戏结束!T__T”);
gtxy(W/2+1,H/2+2); printf(“玩家总分:%d分”,score);
getch( );
break;
}}
return 0;
}void csh( ) //初始化界面
{ int i;
gtxy(0,0);
CONSOLE_CURSOR_INFO cursor_={1,0}; //以下两行是隐藏光标的设置
SetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE),&cursor_);
for(i=0;i{if(f.a == dd->a && f.b == dd->b)<=W;i=i+2) //横坐标要为偶数,因为这个要打印的字符占2个位置
{Color(2); //设定打印颜色为绿色
gtxy(i,0); printf("■"); //打印上边框
gtxy(i,H); printf("■"); //打印下边框
}for(i=1;i { gtxy(0,i); printf("■"); //打印左边框 gtxy(W,i); printf("■"); //打印右边框 }while(1) { srand((unsigned)time(NULL)); //初始化随机数发生器srand( ) fod.x=rand()%(W-4)+2; //随机函数rand( )产生一个从0到比”(W-4)”小1的数再加2 fod.y=rand()%(H-2)+1; //随机函数rand( )产生一个从0到比”(H-2)”小1的数再加1 if (fod.x%2==0) break; //fod.x是食物的横坐标,要是2的倍数(为偶数) }Color(12); //设定打印颜色为淡红 gtxy(fod.x,fod.y); printf("●"); //到食物坐标处打印初试食物 snk.len=3; //蛇身长初值为3节 snk.speed=350; //刷新蛇的时间,即移动速度初值为350毫秒 snk.x[0]=W/2+1; //蛇头横坐标要为偶数(因为W/2=39) snk.y[0]=H/2; //蛇头纵坐标 Color(9); //设定打印颜色为淡蓝 gtxy(snk.x[0], snk.y[0]); printf("■"); //打印蛇头 for(i=1;i { snk.x[i]=snk.x[i-1]+2; snk.y[i]=snk.y[i-1]; gtxy(snk.x[i],snk.y[i]); printf("■"); //打印蛇身 }Color(7, 0); //恢复默认的白字黑底 return; }void keymove( ) //按键作移动蛇 { int key; if( kbhit( ) ) //如有按键输入才执行下面作 { key=getch( ); if (key==224) //值为224表示按下了方向键,下面要再次获取键值 { key=getch( ); if(key==72&&dir!=2)dir=1; //72表示按下了向上方向键 if(key==80&&dir!=1)dir=2; //80为向下 if(key==75&&dir!=4)dir=3; //75为向左 if(key==77&&dir!=3)dir=4; //77为向右 }if (key==32) { while(1) if((key=getch( ))==32) break; } //32为空格键,这儿用来暂停 }if (Flag==0) //如没吃食物,才执行下面作擦掉蛇尾 { gtxy(snk.x[snk.len-1],snk.y[snk.len-1]); printf(" "); } int i; for (i = snk.len - 1; i > 0; i--) //从蛇尾起每节存储前一节坐标值(蛇头除外) { snk.x[i]=snk.x[i-1]; snk.y[i]=snk.y[i-1]; } switch (dir) //判断蛇头该往哪个方向移动,并获取最新坐标值 { case 1: snk.y[0]--; break; //dir=1要向上移动 case 2: snk.y[0]++; break; //dir=2要向下移动 case 3: snk.x[0]-=2; break; //dir=3要向左移动 case 4: snk.x[0]+=2; break; //dir=4要向右移动 }Color(9); gtxy(snk.x[0], snk.y[0]); printf("■"); //打印蛇头 if (snk.x[0] == fod.x && snk.y[0] == fod.y) //如吃到食物则执行以下作 { printf("7"); snk.len++; score += 100; snk.speed -= 5; Flag = 1; } //7是响铃 else Flag = 0; //没吃到食物Flag的值为0 if(snk.speed<150) snk.speed= snk.speed+5; //码,不让速度无限加快 }void putFod( ) //投放食物 { if (Flag == 1) //如吃到食物才执行以下作,生成另一个食物 { while (1) { int i,n= 1; srand((unsigned)time(NULL)); //初始化随机数发生器srand( ) fod.x = rand( ) % (W - 4) + 2; //产生在游戏框范围内的一个x坐标值 fod.y = rand( ) % (H - 2) + 1; //产生在游戏框范围内的一个y坐标值 for (i = 0; i < snk.len; i++) //随机生成的食物不能在蛇的身体上 { if (fod.x == snk.x[i] &&fod.y == snk.y[i]) { n= 0; break;} } if (n && fod.x % 2 == 0) break; //n不为0且横坐标为偶数,则食物坐标取值成功 }Color(12); //设定字符为红色 gtxy(fod.x, fod.y); printf("●"); //光标到取得的坐标处打印食物 }return; }int Over( ) //判断游戏是否结束的函数 { int i; Color(7); gtxy(2,H+1); printf(“暂停键:space.”); //以下打印一些其它信息 gtxy(2,H+2); printf(“游戏得分:%d”,score); if (snk.x[0] == 0 || snk.x[0] == W) return 1; //蛇头触碰左右边界 if (snk.y[0] == 0 || snk.y[0] == H) return 1; //蛇头触碰上下边界 for (i = 1; i < snk.len; i++) { if (snk.x[0] == snk.x[i] && snk.y[0] == snk.y[i]) return 1; } //蛇头触碰自身 return 0; //没碰到边界及自身时就返回0 }void Color(int a) //设定颜色的函数 { SetConsoleTextAttribute(GetStdHandle( STD_OUTPUT_HANDLE ),a ); } 贪吃蛇的源代码 #include #include #include typedef struct snake {int a; int b; struct snake u; struct snake n; }snake,snake1; typedef struct food {int a; int b; }food; void main() {char c,c0 = 'd'; int i,j,k,n=1,t,at; snake p,q; snake dd,dd0,dd1,dd2; food f; srand(time(NULL)); p.u = NULL; p.n = &q; p.a = 5;p.b = 6;q.a = 5;q.b = 5; q.u = &p;q.n = NULL; dd=dd2= &q; f.a=(rand()%15+1); f.b=(rand()%15+1); while(1) {srand(time(NULL)); ("cls"); for(i = 0;i < 17;i ++) {for(j = 0; j < 17;j++) {if(i == 0 ) printf("▁"); else if(i == 16) printf("▔"); else if(j == 0) printf("▕"); else if(j == 16) printf("▏"); else if(i == p.a && j == p.b) printf("■"); else if(i == f.a && j == f.b) printf("★"); {t = 0; dd = dd2; for(k = 0; k < n ;k++) {printf("□"); break; }dd = dd->u; }if(t == 0) printf(" "); }}printf("n"); }at = 0; dd =dd2; for(i=0;i {if(p.a == dd->a && p.b == dd->b) {printf(" over!!n"); exit(0); }dd = dd->u; }if(p.a == f.a && p.b == f.b) {dd = dd2; at =1; f.a = (rand()%15+1); f.b = (rand()%15+1); for(i=0;i {f.a = dd2->a; f.b = dd2->b; break; }} n++; }if(kbhit()) {c = getch(); dd = dd2; if(c == 'w' && c0 != 's') {if(at == 1) {dd0 =(snake1)malloc(sizeof(snake)); dd0->a = dd2->a;dd0->b = dd2->b; dd0->n = NULL;dd0->u = dd2; dd2=dd0; for(i = 0; i {dd1 = dd->u; dd->a = dd1->a; dd = dd->u; }if(p.a == 1) p.a = 15; p.a = (p.a-1)%15; }else if(c == 's' && c0 != 'w') {if(at == 1) {dd0 =(snake1)malloc(sizeof(snake)); dd0->a = dd2->a;dd0->b = dd2->b; dd0->n = NULL;dd0->u = dd2; dd2=dd0; for(i = 0; i {dd1 = dd->u; dd->a = dd1->a; dd = dd->u; }p.a = (p.a%15)+1; }else if(c == 'a' && c0 != 'd') {if(at == 1) {dd0 =(snake1)malloc(sizeof(snake)); dd0->a = dd2->a;dd0->b = dd2->b; dd0->n = NULL;dd0->u = dd2; dd2=dd0; for(i = 0; i {dd1 = dd->u; dd->a = dd1->a; dd = dd->u; }if(p.b == 1) elsep.b = 15; p.b = (p.b-1)%15; }else if(c == 'd' && c0 != 'a') {if(at == 1) {dd0 =(snake1)malloc(sizeof(snake)); dd0->a = dd2->a;dd0->b = dd2->b; dd0->n = NULL;dd0->u = dd2; dd2=dd0; for(i = 0; i {dd1 = dd->u; dd->a = dd1->a; dd = dd->u; }p.b = (p.b%15)+1; }else {goto qq; }c0 = c; }else {qq: if(c0 == 'w') {if(at == 1) {dd0 =(snake1)malloc(sizeof(snake)); dd0->a = dd2->a;dd0->b = dd2->b; dd0->n = NULL;dd0->u = dd2; dd2=dd0; for(i = 0; i {dd1 = dd->u; dd->a = dd1->a; dd = dd->u; }if(p.a == 1) p.a = 15; p.a=(p.a-1)%15; }else if(c0 == 's') {if(at == 1) {dd0 =(snake1)malloc(sizeof(snake)); dd0->a = dd2->a;dd0->b = dd2->b; dd0->n = NULL;dd0->u = dd2; dd2=dd0; for(i = 0; i {dd1 = dd->u; dd->a = dd1->a; dd = dd->u; }p.a=(p.a%15)+1; }else if(c0 == 'a') {if(at == 1) {dd0 =(snake1)malloc(sizeof(snake)); dd0->a = dd2->a;dd0->b = dd2->b; dd0->n = NULL;dd0->u = dd2; dd2=dd0; for(i = 0; i {dd1 = dd->u; dd->a = dd1->a; dd = dd->u; }if(p.b == 1) p.b = 15; p.b=(p.b-1)%15; }else if(c0 == 'd') {if(at == 1) {dd0 =(snake1)malloc(sizeof(snake)); dd0->a = dd2->a;dd0->b = dd2->b; dd0->n = NULL;dd0->u = dd2; dd2=dd0; for(i = 0; i {dd1 = dd->u; dd->a = dd1->a; dd = dd->u; }p.b=(p.b%15)+1; }} fflush(stdin); dd = &q; _sleep(0); }} 我是一个新手。 下面有一个游戏: “坑人的无限”(一) #include #include #include #include #include using namespace std; int a; class Screen {private: int n; public: Screen() {n=5; }void move1()//注意只是循环输出各个数字,不能对循环输出再进行循环(如果对循环输出0123456789再进行循环,则move1就变成一个无限循环的函数,则下面的screen循环就进行不下去了) {for(int i=0;i<10;++i) {cout< }} void move2() {char i; for(i='a';i<='z';++i) {cout< }} void screen() {int t; while(!kbhit()) {t=time(0)%(2n);//如果是放在循环外面的话,time(0)的值就一直不变,放在循环里面,一秒钟进行一次判断,一秒钟进行一次循环 if(t move1(); move2(); }} }; int main(){ cout<<"欢迎来到“无限 ”游戏"< cout<<"下面会输出无限个笑脸"< cout<<"按'enter'取消"< Sleep(4000); Screen s; s.screen(); cout< cout<<"接下来会更让你丧心病狂的!"< cout<<"但是坚持过后必有彩蛋!!!!!!加油!!"; Sleep(10000); for(int as=0;as<=50;as++){ for(int i=0;i<=100;i++){ cout< }cout< }for(int i=0;i<=100;i++){ cout< }cout< }} cout<<"你居然坚持下来了!"< for(int i=0;i<=10;i++){ cout<<"-----------------------------------------------"< }cout<<"敬请期待!等待无限游戏(二)!"; return 0; 用sleep函数,比如说sleep(1000)表示等1000毫秒在执行下一个程序 #include Sleep(1000); /这个貌似是毫秒级,具体自己可以试 另外用for循环岂可 for(i = 0; i < 1000; i++); func1(); sleep( 5 ) ; //休息5秒 func2() ; 如果对时间要求非常,可以考虑采用和汇编中处理的情况,看看cpu的频率,将for命令分解成汇编语言,看多少毫秒执行一次命令,然后设置循环次数,这样足够,实际上在汇编下也是这么做的。 用delay会使进程独占cpu,一般不要用,可以用usleep(),单位微妙 休眠10毫秒就是usleep(100010) TC中sleep()函数原型为: unsigned sleep(unsigned seconds); 参数单位为秒 delay()函数原型为: unsigned sleep(unsigned seconds); 参数单位为毫秒 函数sleep()确实会暂停x秒,但delay()多数情况下不,可以不断修正设置的数值,来达到控制时间的目的。 #include int usleep(useconds_t usec); // 函数原型 usec -- 毫秒。整数。允许值:小于 1000000 返回 0 -- 表示调用执行成功,1 -- 失败。 sleep()函数大概只能到50ms左右,你用sleep(10)是肯定不行的,如果你要的定时的话可以使用QueryPerformanceFrequency()函数,用法为: LARGE_INTEGER litmp; LONGLONG QPart1,QPart2; double dfMinus, dfFreq, d=(double)litmp.QuadPart;//fTim; QueryPerformanceFrequency(&litmp); QueryPerformanceCounter(&litmp); QPart1 =litmp.QuadPart;// 获得初始值 do {QueryPerformanceCounter(&litmp); QPart2 =litmp.QuadPart;//获得中止值 =(double)(QPart2-QPart1); dfTim =dfMinus /dfFreq;// 获得对应的时间值,单位为秒 }while(dfTim<0.001); 其定时误不超过1微秒,精度与CPU等机器配置有关。 ××××××××××××××××××××××××× sleep()函数的中等待时间是以毫秒计算的,所以等待1秒就是sleep(1000),如果要让等待时间小于一秒,那么就让传入的参数小于1000就行了. 比如,等待0.1秒: sleep(100); sleep()函数大概只能到50ms左右,你用sleep(10)是肯定不行的,如果你要的定时的话可以使用QueryPerformanceFrequency()函数,用法为: LARGE_INTEGER litmp; LONGLONG QPart1,QPart2; double dfMinus, dfFreq, dfTim; QueryPerformanceFrequency(&litmp); QueryPerformanceCounter(&litmp); QPart1 =litmp.QuadPart;// 获得初始值 do {QueryPerformanceCounter(&litmp); QPart2 =litmp.QuadPart;//获得中止值 =(double)(QPart2-QPart1); dfTim =dfMinus /dfFreq;// 获得对应的时间值,单位为秒 }while(dfTim<0.001); 其定时误不超过1微秒,精度与CPU等机器配置有关。 ××××××××××××××××××××××××× sleep()函数的中等待时间是以毫秒计算的,所以等待1秒就是sleep(1000),如果要让等待时间小于一秒,那么就让传入的参数小于1000就行了. 比如,等待0.1秒: sleep(100); sleep(100) 里面的是以毫秒为单位的。100就是0.1秒 sleep()函数大概只能到50ms左右,你用sleep(10)是肯定不行的,如果你要的定时的话可以使用QueryPerformanceFrequency()函数,用法为: LARGE_INTEGER litmp; LONGLONG QPart1,QPart2; double dfMinus, dfFreq, dfTim; QueryPerformanceFrequency(&litmp); QueryPerformanceCounter(&litmp); QPart1 =litmp.QuadPart;// 获得初始值 do {QueryPerformanceCounter(&litmp); QPart2 =litmp.QuadPart;//获得中止值 =(double)(QPart2-QPart1); dfTim =dfMinus /dfFreq;// 获得对应的时间值,单位为秒 }while(dfTim<0.001); 其定时误不超过1微秒,精度与CPU等机器配置有关。 ××××××××××××××××××××××××× sleep()函数的中等待时间是以毫秒计算的,所以等待1秒就是sleep(1000),如果要让等待时间小于一秒,那么就让传入的参数小于1000就行了. 比如,等待0.1秒: sleep(100); 你可以换用 delay(); 这里 使以微妙为单位的在C语言中怎样实现等几秒钟在执行下一个程序?
t = 1;如何让C语言sleep()函数等待时间小于1秒
}dd = dd2;c语言有个可以使程序延时的语句是什么?
cout<
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系 836084111@qq.com 删除。