VC 程序运行时占用CPU资源为50%左右,怎么办?

Python019

VC 程序运行时占用CPU资源为50%左右,怎么办?,第1张

不要用死循环,用事件不好么?

如果非要用死循环,也应该这样

检测是否有键盘输入:

1)如果有,处理之

2)如果没有,Sleep50毫秒

返回继续

估计你没有睡眠,所以狂吃CPU

这要看你输入什么了。有一个要点:scanf()的返回值是它成功读入值的个数。如果你第一次输入一个整数,那么第一个scanf函数会成功读入一个整数,它的返回值就是1,即ret的值是1。那么for循环的关系表达式:ret!=1就不成立,整个循环就不会执行,程序直接停止。如果你第一次输入了非整数,那么第一个scanf函数成功读入的值就是0,它返回0,即ret = 0。此时for循环的关系表达式:ret!=1成立,for循环才会开始迭代。如果你的程序执行的时候一直在打印,不给你输入的机会,说明你清空输入缓冲区的函数fflush没起作用,缓冲区里保存的第一次非法输入一直都在。你把 fflush(stdin)改成: while(getchar()!='\n')就好了。