怎么把从键盘输入字符串 赋值给 指向字符的指针 ?

oubenruing 2010-12-11 03:55:45
如题

例如:
我有这样一个构造函数,
CMyString(const char *str);
但是我想让该CMyString类的成员变量char *m_szStr得到的值是从键盘输入请问该怎么做
...全文
323 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
oubenruing 2010-12-11
  • 打赏
  • 举报
回复
额,,我果真忘了- -
cyclejdm 2010-12-11
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 oubenruing 的回复:]

引用 8 楼 cyclejdm 的回复:

C/C++ code


string a;
cin >> a;
m_szStr = a.c_str();





不知道你在纠结什么?


谢谢呀~~~之前不知道c_str()这个函数。。
我百度了一下 上面说写成 strcpy(m_szStr,a.c_str())更安全
十分感谢~~
[/Quote]
strcpy(m_szStr,a.c_str())之前别忘了先分配存储空间
oubenruing 2010-12-11
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 cyclejdm 的回复:]

C/C++ code


string a;
cin >> a;
m_szStr = a.c_str();





不知道你在纠结什么?
[/Quote]

谢谢呀~~~之前不知道c_str()这个函数。。
我百度了一下 上面说写成 strcpy(m_szStr,a.c_str())更安全
十分感谢~~
cyclejdm 2010-12-11
  • 打赏
  • 举报
回复


string a;
cin >> a;
m_szStr = a.c_str();




不知道你在纠结什么?
oubenruing 2010-12-11
  • 打赏
  • 举报
回复
用scanf 接收也行。

string a;
scanf("%s",&a)

这样的话a的地址类型是字符串型的。无法赋值给字符型的指针呀,重载运算符的话 又变麻烦了。
求高手教教我= =
oubenruing 2010-12-11
  • 打赏
  • 举报
回复
就是把地址赋值给指针,但是字符串大小 不好确定,如果把数组定大了的话就有点浪费资源了,
我想用cin接收 怎么做?
我是小数位 2010-12-11
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 cxj0062008 的回复:]
呵呵,設個大點一點的數組保存下來,把數組地址賦給指針!
[/Quote]應該說是把數組地址賦給指針變量!哈哈,
我是小数位 2010-12-11
  • 打赏
  • 举报
回复
呵呵,設個大點一點的數組保存下來,把數組地址賦給指針!
WU864401608 2010-12-11
  • 打赏
  • 举报
回复
指针变量怎么可以用字符来赋值!!
bdmh 2010-12-11
  • 打赏
  • 举报
回复
scanf接收就是了
sduxiaoxiang 2010-12-11
  • 打赏
  • 举报
回复
直接字符读取就是
不过大小不好确定

64,677

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

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