1
我正在寫一個程序來生成位圖圖像。當我測試它時,我發現C++寫入了額外的字節(看似隨機的位置),從而抵消了我的所有字節(隨後搞亂了圖像)。我從數組寫入文件。我認爲數組的完整內容是完美的,但是額外的字節總是被寫入。這通過用ios :: binary標誌打開文件來解決。Ofstream ::寫儘管明確的源數組額外的字節
如果我從完全相同的數組輸出,爲什麼打開帶有和不帶有ios :: binary標誌的文件很重要。
使用代碼:: Blocks的12.11,默認的編譯器的C++ 0x
你看過數組內容的*字節*嗎?例如,您的文本輸出流很可能將CR轉換爲CR/LF。我的問題是「爲什麼我會嘗試將二進制數據寫入文本輸出流,並期望它能*工作*? – WhozCraig
Inspired給出的答案與我的場景完美匹配......並且我查看了單個字節(使自己的緩衝區),因爲他們去了潮流 – ithenoob
非常好,它不是一個不尋常的打嗝,很高興你找到答案。 – WhozCraig