std::cout << buffer << std::endl;
if (lastTitle != buffer) {
//write new title;
WriteFile(file, "\n\nWindow: ", sizeof("\n\nWindow: "), NULL, NULL);
WriteFile(file, buffer.c_str(), sizeof(buffer), NULL, NULL);
WriteFile(file, "\n", sizeof("\n"), NULL, NULL);
std::cout << GetLastError(); //this is showing 0, which means no error
Cout的輸出:的WriteFile()截斷字符串
C:\用戶\ riseo \桌面\ C++ \ my_proj \調試\ my_proj.exe
正在被寫入到是表示文件:
窗口:C:\用戶\ riseo \桌面\ C++ \米
我不太清楚這是爲什麼被截斷,它應該是一樣什麼COUT正在打印。對不起,這篇文章並沒有顯示出太多的研究,但我一整天都被各種字符串格式相關陷阱燒燬,我不知道這裏發生了什麼。我能想到的只有c_str()會出錯。
「*我已經一整天都被各種各樣的字符串格式相關陷阱燒燬,我不知道這裏發生了什麼*「 - 那麼你顯然不會了解字符串在內存中的表示方式,以及格式化函數/操作符的工作方式。你需要刷新你的C/C++基礎知識。 –