c++中如何将输入的字符串(不知长度)存入数组中?最好用代码回答.

2025-01-05 16:06:40
推荐回答(5个)
回答1:

#include
#include
#include
using namespace std;
int main()
{
string str;
char temp;
cout<<"输入字符串,按回车键结束输入"<while((temp=cin.get())!='\n')
{
str +=temp;
}
const int LEN =str.length();
char* dest = new char[LEN];//根据输入字符串的长度,创建字符数组
for(int i = 0;i{
dest[i]=str[i];
cout<}
delete dest;
system("pause");
return 0;
}

回答2:

如果可以使用String类的话那很方便了
先用String类接受输入
再转换为char*

对于“不知长度”的输入,如果我的输入超出了内存的限制,不也是会Fail的么,所以一定有某种“限制”输入的长度。

回答3:

char s[255];
cin.getline(s,255)

后边可以用 strlen(s) 获取到实际长度

回答4:

#包括
#包括中

无效的主要()

{

INT I,J;

个char [4] [ 20],[20];

(I = 0; <4; + +)

得到([]);

(I = 0 <4; + +)

(J = 0; J <3-I,J + +)

(STRCMP([J],[J +1)] > 0)

{

STRCPY(T,S [J]);

STRCPY([J],[J +1]);,

STRCPY([ +1],T);

}

的printf(“排序后:\ N”);

(i = 0; <4 + +)

看跌期权([]);
}

回答5:

#include void main() {char ch[100]; scanf("%s",ch); printf("%s",ch);}