個人理解的整數自動轉換原則

2021-07-30 14:35:42 字數 701 閱讀 5338

個人理解是下面兩點:

1.位元組數少的往位元組數大的轉,因為你位元組數少,那不可能讓別人把資料階段了和你做運算,就像路上兩個人,乙個人說他是建甌人,另外乙個人說他是南平人,那麼對於乙個不懂建甌和南平在**的人就無法分別出你兩歸屬地是什麼關係,於是第乙個人就得說我是南平市建甌市人,另外乙個人說他是南平市人,這樣這個老外就知道你兩其實是同乙個地級市的人。

2.有符號的往無符號的轉換

都是有符號往無符號轉

為什麼呢?

計算機在儲存資料時,根據系統對資料的型別的判斷來決定資料的儲存形式及儲存區上的內容,而讀取資料時,計算機直接從記憶體上讀取儲存區上的對應內容。儲存區上的內容(如10000100),計算機系統讀取上面的內容(就是10000100)直接加以利用,不管原先該值是某值的原碼或補碼,或什麼其他轉化而來,所以加入變數a與b對應位址上的數值(不管是原碼還是補碼或......)是11000000和00000011,則a+b=11000011;也就是說儲存區裡面的內容根據程式設計師自己的需求在從儲存區取資料時,將資料看成什麼樣的(是原碼還是什麼.........),而計算機只認1與0而已。

有符號數轉為無符號數,就是求有符號數的補碼【其實就是該有符號數在記憶體上儲存的對應數值,——使用補碼的數值時就是補碼形式的數值所有位都是表示其大小,而不在以補碼形式看待該值。(正數補數為原碼,負數補碼為無符號數的模加上該負數)一般負數求補碼就是保持符號位,數值各位取反再加1,結果就為補碼

C語言中的整數自動轉換原則

有符號數與無符號數之間運算問題 以下實驗均在virual c 6中執行通過 這個問題測試是否懂得c語言中的整數自動轉換原則,有些開發者懂得極少這些東西。當表示式中存在有符號型別和無符號型別時所有的運算元都自動轉換為無符號型別。因此,從這個意義上講,無符號數的運算優先順序要高於有符號數,這一點對於應當...

C語言中的整數自動轉換原則

1 隱式轉換 c在以下四種情況下會進行隱式轉換 1 算術表示式中,低型別能夠轉換為高型別。2 賦值表示式中,右邊表示式的值自動隱式轉換為左邊變數的型別,並賦值給他。3 函式呼叫中引數傳遞時,系統隱式地將實參轉換為形參的型別後,賦給形參。4 函式有返回值時,系統將隱式地將返回表示式型別轉換為返回值型別...

軟體設計原則 個人理解

在軟體開發過程中,我們需要遵守很多的規則,來完成程式的編寫。但是在實際開發的過程中,由於需求的不斷迭代,程式功能的不斷完善,在擴充套件的過程中會遇到瓶頸。這時候,我們就需要熟知軟體開發過程中的原則,並遵守原則。下面就軟體開發的六大原則進行闡述個人的理解和看法 顧名思義,這個原則說的就是 乙個類或乙個...