为了账号安全,请及时绑定邮箱和手机立即绑定

为什么要按两次空格才能出现结果呀

#include<iostream>
#include<string>
using namespace std;
int main()
{
string name;
cout<< "Please input your name :";
getline(cin, name);
if(name.empty())
{
cout << "Input is null..."<<endl;
system("pause");

return 0;
}
if(name =="imooc")
{
cout<<"you are a administrator"<<endl;
}
cout<<"hello " + name<<endl;
cout<<"your name length is : "<<name.size()<<endl;
cout<<"your first letter is : "<<name[0]<<endl;
system("pause");
return 0;
}

正在回答

1 回答

system("pause");  的作用是暂停,按任意键继续。有的编译器在编译的时候自带暂停,所以需要按两次,但exe文件如果没有这句话,运行后就会直接退出了

0 回复 有任何疑惑可以回复我~
#1

looya 提问者

运行后直接退出是啥意思呀
2018-03-09 回复 有任何疑惑可以回复我~
#2

橙泥 回复 looya 提问者

就是结束程序。这样理解吧。当你的程序运行完后,会结束程序,如果你在某一个位置加上system("pause"); ,那么运行到这句话的时候就会需要 按任意键继续 ,不是必须在程序结束时添加。在你的编译器上编译时,有的编译器会自带程序结束后的暂停,但有的编译器没有,所以需要打上这句话来暂停(一般用来看输出)。事实上,当你的程序以 exe 运行时,没有编译器的暂停,所以需要这句话来暂停以达到想要的效果。你可以试一下,打一个没有这句话的程序并编译,如果程序结束后黑框仍然在,那么你的编译器就有这个功能,便不需要这段代码了。
2018-03-10 回复 有任何疑惑可以回复我~
#3

橙泥 回复 looya 提问者

你可以理解为这句话的就是让整个程序暂停了,直到你按任意键继续
2018-03-10 回复 有任何疑惑可以回复我~
#4

looya 提问者 回复 橙泥

可是我输入的先后顺序是先输出再pause啊
2018-03-10 回复 有任何疑惑可以回复我~
#5

looya 提问者 回复 橙泥

为什么我把system(pause)注释了还是要按两次回车呀?
2018-03-10 回复 有任何疑惑可以回复我~
#6

橙泥 回复 looya 提问者

我理解错了。如果你指的是输入name后需要两次回车才能出现结果,我运行的时候一次回车就行了。如果你指的是输出结束后出现两次按任意键继续,那就说明你的编译器有暂停功能,就不需要system(pause)了。
2018-03-11 回复 有任何疑惑可以回复我~
#7

looya 提问者 回复 橙泥

额,我说的是输入name之后还要按两次回车?
2018-03-11 回复 有任何疑惑可以回复我~
#8

looya 提问者 回复 橙泥

你用的是什么编译器呀,我用vc,我的要按两次才可以诶,这是为啥?
2018-03-11 回复 有任何疑惑可以回复我~
#9

橙泥 回复 looya 提问者

dev.cpp
2018-03-11 回复 有任何疑惑可以回复我~
查看6条回复

举报

0/150
提交
取消
C++远征之封装篇(上)
  • 参与学习       103410    人
  • 解答问题       701    个

封装--面向对象的基石,本教程力求帮助小伙伴们即学即会

进入课程

为什么要按两次空格才能出现结果呀

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信