如何实现一个简单的c++ console下的字符段输入?

来源:百度知道 编辑:UC知道 时间:2024/05/05 22:01:47
现有:
void main()
{

...
char str[]="Welcome to My System!\n"
"XXXX University (www.xxxx.edu.cn)\n"
"Email: xxx@xxx.com";
...
}
如何将str[]变为从console输入,即可以输入包含任何字符的字符串+回车再输入一个字符串再回车,好像在DOS下使用copy con xxx.txt一样的效果,直到ctrl-z结束输入或其他什么方式结束整段的输入。然后把这整段字符赋给str[]。

情况紧急!!!事成将有大额额外奖励,谢谢!!
以下两位回答不对。

str[500]直接规定长度,后面处理太困难。。有没有自适应的方法?

#include <iostream>
using namespace std;
int main()
{
char str[500];
char ch;
int i = 0;
while((ch =cin.get()) != EOF)
{
str[i++] = ch;
}
cout << str <<endl;
return 0;
}

or
#include <iostream>
using namespace std;
int main()
{
char str[500];
cin.read(str, 500);
cout << str <<endl;
return 0;
}

他们回答的还可以

#include <iostream>
using namespace std;
int main()
{
char str[500];
char ch;
int i = 0;
while((ch =cin.get()) != EOF)
{
str[i++] = ch;
}
cout << str <<endl;
return 0;
}

or
#include <iostream>
using namespace std;
int main()
{
char str[500];
cin.read(str, 500);
cout << str <<endl;
return 0;
}
多看书啊