我無法將常量字符轉換爲字節。我正在閱讀使用ifstream的文件,它給我的內容作爲字符串,然後我使用c_str()將字符串轉換爲常量字符。然後嘗試將其插入到字節數組以用於數據包發送目的。我是新來的C + +不能理解我必須如何將字符轉換爲字節,需要你的幫助球員。這裏是我的一段代碼,請給我一些建議從`const char *'轉換爲`byte'
byte buf[42];
const char* fname = path.c_str();
ifstream inFile;
inFile.open(fname);//open the input file
stringstream strStream;
strStream << inFile.rdbuf();//read the file
string str = strStream.str();//str holds the content of the file
vector<string> result = explode(str,',');
for (size_t i = 0; i < result.size(); i++) {
buf[i] = result[i].c_str(); // Here is Error
cout << "\"" << result[i] << "\"" << endl;
}
system("pause");
這是我從文件中取數據:(0x68,0x32,0x01,0x7B,0x01,0x1F,0x00,0x00,0x00,0x02,0x00, 0x00,0x00,0x00)
這個'byte'類型是如何定義的?它不是標準C++的一部分... – 2014-10-16 13:36:53
您正試圖在字節數組中存儲指向字符串的指針。 1個字節不能包含整個字符串。我不確定你想要做什麼。 – 2014-10-16 13:38:54
'byte'不是C++ 11的標準類型。你的意思是[int8_t](http://en.cppreference.com/w/cpp/types/整數)? – 2014-10-16 13:41:07