C++中如何将带空格的字符串录入到一个数组中

比如我输入两组字符串一组Howareyou把它录入到一个数组中是有空格的另一组aaaabbbb需要怎么操作能把代码写写吗?谢谢!!... 比如 我输入两组字符串 一组How are you 把它录入到一个数组中 是有空格的 另一组aaaa bbbb
需要怎么操作 能把代码写写吗? 谢谢!!
展开
 我来答
匿名用户
2013-12-16
展开全部

#include <iostream>

#include <string>

using namespace std;

int main()

{

cout << "输入字符串的长度:" << endl;

int num;  //你要输入字符串的长度

cin >> num;

getc(stdin);  //去掉输入num的换行符

char * p = new char [num + 1];  //动态申请你要输入字符串的长度

memset(p, 0, num+1);   //申请的空间初始化为0

gets(p);  

*(p+num) = '\0';  //以'\0'结尾

cout << p << endl;

delete[] p;  //释放内存

system("pause");

return 0;

}

我是人吗似的
2013-12-15 · TA获得超过1708个赞
知道小有建树答主
回答量:785
采纳率:50%
帮助的人:298万
展开全部
我去。。。。你搞这么麻烦,还用数组,直接用string不行了
用getline,getline(cin,string),然后把string转化为char的数组即可
具体如下
string r;
getline(cin,r);
char a[10]={0};
memcpy(a,r.c_str(),10);
然后a里面存的就是所需的东西了
一楼那个回复就能用
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
仙戈雅3n
推荐于2017-11-26 · TA获得超过5790个赞
知道大有可为答主
回答量:2398
采纳率:75%
帮助的人:899万
展开全部
#include <iostream>
#include <string>
using namespace std;
void main()
{
char test[100]; // 定义够长的数组空间
for(int i=0;i<100;i++) test[i]='\0';
cin.getline(test,100); // 整行读取(包括空格)
cout<<test<<endl;

}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
撸代码的小强哥
2013-12-15 · 超过18用户采纳过TA的回答
知道答主
回答量:219
采纳率:33%
帮助的人:21.8万
展开全部
用gets (how are you)试一下吧。
追问
根据不同的输入把所输入的录入数组中   输入是随机的字母可能带空格   不是how are you
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式