簡體   English   中英

從int64轉換為字節數組

[英]Cast from int64 to byte array

我寫了下面的代碼,將很長的一段時間轉換為字節數組。

BYTE Buffer[8 +32];
BYTE * Temp = reinterpret_cast<BYTE*> (&Size);
Buffer[0] = Temp[0]; Buffer[1] = Temp[1]; Buffer[2] = Temp[2]; Buffer[3] = Temp[3]; 
Buffer[4] = Temp[4]; Buffer[5] = Temp[5]; Buffer[6] = Temp[6]; Buffer[7] = Temp[7];
//The next 32 bytes (Buffer[8] to Buffer[39]) contains the file name.
WriteFile(hFile,Buffer,40,&dwWrite,NULL);

現在的問題是將int64直接轉換為字節是否安全? 有哪些可能的錯誤?

我很清楚執行此操作的其他安全方法(例如Bitshifting),但我希望代碼盡可能快。

謝謝 !

問題是您以當前計算機的字節順序寫入磁盤。 如果您在具有不同字節順序的機器上再次讀取它,將會遇到很大的麻煩。

這就是為什么位移會是更好的方法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM