我正在開發 VB.NET 中的應用程式,該應用程式使用第三方 DLL,其檔案適用于 C 。對于資料型別轉換,我使用了兩個頁面:
https://www.tutorialspoint.com/cplusplus/cpp_data_types.htm
https://docs.microsoft.com/en-us/dotnet/visual-basic/language-reference/data-types/
我在 C 頁面中查找大小和 VB.NET 的等效大小;例如,int 是 C 中的 4 個位元組,因此相應的 VB.NET 將是 INT32 或整數。
然而,這給了我意想不到的結果。
然后我注意到 C long int 被指定為 8 個位元組,值為 -2,147,483,648 到 2,147,483,647,而 VB.NET long 也被指定為 8 個位元組,資料型別為 INT64,但值顯示為 -9,223,372,036,854,7307,820,52,807,825,820
此外,C int(4 位元組)和 long(8 位元組)的大小不同,但范圍相同。
為什么 8 位元組變數的兩個(非常)不同的范圍?其中一頁是錯誤的嗎?
uj5u.com熱心網友回復:
檢查這個:https : //docs.microsoft.com/en-gb/cpp/cpp/data-type-ranges?view=msvc-170 Long 是 4 個位元組。vb.net 頁面是正確的,C 頁面不是。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/369701.html
上一篇:減少選擇中的圈復雜度
