c/c++ string 的 length(), size(), strlen() 区别

需求 c/cpp 字符串长度,使用 length(), size(), strlen() 结果区别? 解决 strlen() 会查找 string 中的 ‘\0’,如果找到了,那么就是结束 length() 和 size() 其实一样,都是 string 实际的长度,不管其中是否有 ‘\0’ 参考 C++ string 成员函数 length() size() 和 C strlen() 的区别

<span title='2023-12-31 11:22:00 +0800 CST'>2023-12-31</span>&nbsp;·&nbsp;1 min&nbsp;·&nbsp;30 words&nbsp;·&nbsp;RamLife

c++ R"()"

需求 C++ 中 R"()" 的作用? 解决 正常的字符串在写的时候,碰到特殊字符需要使用 \ 来进行转义,如果希望直接就是原始字符,那么就需要使用 R"()" 了。 QString json = "{\ \"error\": {\ \"code\": 101,\ \"message\" : \"operation failed!\"\ },\ \"result\" : false\ }"; QString json = R"({ "error": { "code": 101, "message": "operation failed!" }, "result": false })"; 参考 C++源码转义技巧 R"()"

<span title='2023-06-19 10:25:00 +0800 CST'>2023-06-19</span>&nbsp;·&nbsp;1 min&nbsp;·&nbsp;46 words&nbsp;·&nbsp;RamLife

从 stringstream 中获取拼接后的 string

需求 如何从 stringstream 中获取多次拼接后的 string, 直接使用 >> 效果并不好. 解决 使用 stringstream 的 str() 这个类函数。 stringstream ss; string s = ""; ss << "123"; ss << "456"; s = ss.str(); 参考 c++ stringstream(老好用了)

<span title='2023-04-06 16:51:00 +0800 CST'>2023-04-06</span>&nbsp;·&nbsp;1 min&nbsp;·&nbsp;32 words&nbsp;·&nbsp;RamLife