我有一个字符串,它实际上包含一个数字和一个字符串,以 分隔,
,例如"12,fooBar"
。
我想将它放入单独的变量中,即数字 intounsigned int myNum
和字符串 into std::string myStr
。
我有以下代码片段:
size_t pos1=value.find(',');
std::cout << value.substr(0, pos1) << " and "
<< (value.substr(0, pos1)).c_str() << std::endl;
这产生12 and 1
. 我在这里错过了什么?2
第二部分发生了什么?
注意:我将问题隔离到这段代码。我需要c_str()
将它传递atoi
给unsigend int
. 在这里我不想打印第二部分。
更新:我实际上是从 levelDB 得到的字符串Get
。如果我像放在这里一样放一个测试字符串,它就可以工作。