C++中如何将带空格的字符串录入到一个数组中
比如我输入两组字符串一组Howareyou把它录入到一个数组中是有空格的另一组aaaabbbb需要怎么操作能把代码写写吗?谢谢!!...
比如 我输入两组字符串 一组How are you 把它录入到一个数组中 是有空格的 另一组aaaa bbbb
需要怎么操作 能把代码写写吗? 谢谢!! 展开
需要怎么操作 能把代码写写吗? 谢谢!! 展开
4个回答
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;
}
展开全部
我去。。。。你搞这么麻烦,还用数组,直接用string不行了
用getline,getline(cin,string),然后把string转化为char的数组即可
具体如下
string r;
getline(cin,r);
char a[10]={0};
memcpy(a,r.c_str(),10);
然后a里面存的就是所需的东西了
一楼那个回复就能用
用getline,getline(cin,string),然后把string转化为char的数组即可
具体如下
string r;
getline(cin,r);
char a[10]={0};
memcpy(a,r.c_str(),10);
然后a里面存的就是所需的东西了
一楼那个回复就能用
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#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;
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用gets (how are you)试一下吧。
追问
根据不同的输入把所输入的录入数组中 输入是随机的字母可能带空格 不是how are you
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询