從文件讀取時遇到問題。這裏是一些示例代碼:在C++中打印引號不在整個std :: string中給出負的ASCII值?
std::for_each(vec.begin(), vec.end(), [&](std::string str1) {
//... split the string up by spaces into vector "split"
for (auto& str : split) {
std::cout << str << "\n";
std::cout << str[0] << "\n";
}
});
所以基本上我打印出每一個元素分成一行,然後打印第一個字符。我所得到的是這樣的:
「test test test
?
,其中第一行是整個str
,第二行應該是第一個字符。但是,它會打印一個?
。
for (auto& str : split) {
std::cout << str << "\n";
std::cout << std::string(1, str[0]) << "\n";
}
我用clang++ -std=c++11
爲我的設置:即使使用std::string
會給出相同的結果。有沒有人看過這個?
對於我使用所有字符串的文件,保證不爲空。 – user473973
@remyabel它基本上是所選擇的這個問題的答案:https://stackoverflow.com/questions/236129/how-to-split-a-string-in-c – user473973