怎样输入不规定长度的字符串?

ronaldo17 2003-03-11 01:27:18
比如要实现:
char a[10];
cin>>a;
这里的a定义了10个的长度,但是怎么样实现输入不定义长度的字符串呢?

...全文
186 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
doer_ljy 2003-03-11
  • 打赏
  • 举报
回复
对呀,C里是没有string的!
所以可以声明成
char * str;

str = (char *)malloc(sizeof(char)*N);
这样给str分配N个字节的存储空间!
ckacka 2003-03-11
  • 打赏
  • 举报
回复
如果你的字符串不足9个字符,直接用就可以了!

如果超出9个字符,一种办法适用楼上的办法 - 用string类

还有就是用
char* mystr;
先malloc你初始的大小,不足时用realloc补充
windcsn 2003-03-11
  • 打赏
  • 举报
回复
#include <string>
#include <iostream>
using namespace std;
void main()
{
string test;
cin>>test;
cout<<test;
}
csr1103 2003-03-11
  • 打赏
  • 举报
回复
一楼的建议你采用字符串指针。
二楼的建议你使用STRING类。
如果可以用二楼的,推荐使用。
一楼的用法在DEVCPP下可以通过编译,但使用时可能造成运行时错误,原因尚不知道,望高手指点。
UP。
Januarius_ 2003-03-11
  • 打赏
  • 举报
回复
用STL中的string
#include <string>
using namespace std;

string s;
这里的s就是不限长度的,很好用,当然你也可以自己写,不过很麻烦的说!
DanielWYO 2003-03-11
  • 打赏
  • 举报
回复
用string是最好的,不过你自己也可以实现一个.
ffgg 2003-03-11
  • 打赏
  • 举报
回复
string
hongyi2000 2003-03-11
  • 打赏
  • 举报
回复
char *a;

69,371

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧