primitive-types

    0熱度

    2回答

    您好我正在兩個協議之間的套接字轉換。我從二進制文件中讀取並將解析的頭文件存儲到類型爲uint32_t的數組中。然後,我將字段從數組中取出並將它們轉換爲相應的類型。到目前爲止uint32_t/int32_t/uint16_t到int32_t工作正常。 但是,當試圖將兩個uint32_t(一個接一個地追加)並將這個64位長數據轉換爲一個double時,我會得到各種錯誤輸出。作爲C編程的新手,我正在努力

    0熱度

    2回答

    在Java中使用和操作引用類型而不是基元類型是否被認爲是更好的做法? 我們經常看到java程序混合使用它們,只使用基本類型還是隻使用引用類型更好?或者根據需要混合它們,以及在基本類型或引用類型之間進行選擇的標準是什麼? 感謝

    4熱度

    2回答

    如果堆中有一個對象,並且該對象有幾個實例變量,則某些是基本類型,而其他對象很少。所以,如果這個對象有5個字段,那麼這個對象在內存中是如何構造的?具體來說...... Java在哪裏存儲每個字段的數據類型?有一些「標誌字節」和一些「數據字節」,其中「標誌字節」標識接下來的幾個「數據字節」的數據類型? 我指的是一些額外的細節出發超出了這個答案: https://stackoverflow.com/a/

    0熱度

    1回答

    將float值的位模式複製到uint32_t或反之亦然(而不是它們),我們可以使用std::copy或memcpy複製位字節到字節。另一種方法是如下使用reinterpret_cast: float f = 0.5f; uint32_t i = *reinterpret_cast<uint32_t*>(&f); 或 uint32_t i; reinterpret_cast<float&>(

    3熱度

    4回答

    當我做 Long.parseUnsignedLong("FBD626CC4961A4FC", 16) 我回來-300009666327239428 這似乎錯了,因爲無符號長按的意義這個回答https://stackoverflow.com/a/2550367/1754020是範圍總是正面的。 要想從這個十六進制值正確的號碼,我做 BigInteger value = new BigIntege

    1熱度

    1回答

    我是新來的斯卡拉。我遇到一個奇怪的事實,這是Byte類型可以包含-128,但不是128 scala> val overflow1NegByte = -129:Byte <console>:11: error: type mismatch; found : Int(-129) required: Byte val overflow1NegByte = -129:Byte

    0熱度

    1回答

    當數據庫中的long字段爲null時,eclipselink在加載時會給它一個默認值0。我如何在全球範圍內更改該值,以便默認值變爲-1?

    -1熱度

    3回答

    我想知道「==」運算符如何處理原始值。我知道「==」會檢查兩個引用是否引用了堆上的同一個對象。 但是它如何在原始值的上下文中存儲在堆棧中? e.g int a = 5; int b = 5; 我認爲這些值不存儲在同一個地方的內存,但 一個== b返回「真」。 我的推測是JVM將存儲在堆棧中的所有值存儲在內存中的一個位置,並在「==」的情況下返回true。 你能否以更詳細的方式向我解釋這件事? Re

    -1熱度

    1回答

    是否有任何簡短的for循環的增強形式,我們可以使用它作爲原語。 我做循環到原語的遺留代碼,這樣 for(int i=0; i<10; i++){ } 雖然對象,我們ehanced for循環像 for(MyObject m : myObjectList){ } 是否有原語也任何類似的選項?

    -2熱度

    5回答

    好吧,我有一對夫婦在這裏值: 'F', 0xf, 070, 70L, 77e-1f, 7.7f, 7.77e1, 77.7 我知道'F'是char和70L有型long。另外,我知道0xf是十六進制(對吧?),而070是八進制。但那些其他數字是什麼?爲什麼地獄是77.7double而不是float?