如何将字符串值分配给C中的字符串变量

新手上路,请多包涵

这不应该工作吗?

 string s;
s = "some string";

原文由 neuromancer 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 745
2 个回答

是的!

它默认构造一个字符串,然后从 const char* 分配它。

(你为什么发布这个问题?……你至少尝试过吗?)

原文由 Stephen 发布,翻译遵循 CC BY-SA 2.5 许可协议

这不应该工作吗?

>  string s;
> s = "some string";
>
> ```

好吧,实际上它的拼写是 `std::string` ,但是如果你有一个 `using namespace std;` ( [绝对邪恶](https://stackoverflow.com/a/1453605/140719))或 `using std::string;` (稍微不那么邪恶),前提是它应该工作您的文件顶部还有一个 `#include <string>` 。

但是请注意,首先将 `s` 初始化为空字符串,只是在下一条语句中替换该值是浪费的。 (如果您不关心效率,为什么要用 C++ 编程?)最好立即将 `s` 初始化为正确的值:

std::string s = “some string”


或者

std::string s(“some string”);

”`

原文由 sbi 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题