while(1)和system("pause")区别

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

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

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

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

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

原文地址:https://www.cnblogs.com/huangfuyuan/p/9149001.html