在CSDN查(抄)代码的时候经常会遇到有大佬写出
system("pause")
这个语句。
后来又接触到
system("cls")
这使我非常好奇,于是查了一下C++头函数库
system函数在stdlib.h头文件里,但是在函数原型中非常简单,一句
int __cdecl system(const char *_Command);
这么强大的函数居然没有几个重载?
然后在C++reference上有这么一条参考语句
std::system("ls -l >test.txt"); // 执行 UNIX 命令 "ls -l >test.txt"
哎?这个语句咋看着这么眼熟?
难不成?
为了证实我的猜想,我打开cmd,输入了几行代码,然后又用system()函数执行了同样的几行代码
合着这个system真的就是把接受的字符串参数当成shell或者命令提示符的命令呗?
得出这个结论的我,又动了歪脑筋,于是便有了下面这行代码:
#include<iostream>
#include<cstdlib>
using namespace std;
int main()
{
char commend[50]="";
cout<<"hello world!"<<endl;
while(1)
{
gets(commend);
if(commend[0]=='\0')
break;
system(commend);
}
return 0;
}
真不愧是我,干啥啥不行,整活第一名!
来看看效果
哎,禁止套娃航!
那今天的活就整到这里了😅