首页 > 技术文章 > while(1)和system("pause")区别

huangfuyuan 2018-06-07 09:34 原文

我们在调试时,有时候会用到这两个语句。

1、显而易见,第一个是一个循环函数,占cpu、占内存;

2、system("pause")是一个系统调用,占内存,不占cpu;这个开销还是有的,有一个暂停当前进程,启动shell来运行pause命令,等待输入。若有了输入还要回收shell.

     另一个问题,因为pause是基于微软的dos系统的,linux下的shell找不到pause,没有此命令。移植性不好,虽然我不知道什么时候要移植.......

3、可以使用getchar,或者std::cin.get。等待用户输入。

 

推荐阅读