unsigned short
とunsigned int
の違いは何ですか? unsigned short
が0-65,535
であり、unsigned int
が0-65,535
または0-4,294,967,295
であることがわかりました。私はその違いをよく理解していません。私のアーキテクチャでは、データ型のサイズをどのように知ることができますか?そして、たとえば、の場合、c
がunsigned short
であり、dがunsigned int
である場合。それはどういう意味ですか? d
の最初の16ビットはc
に割り当てられていますか?unsigned shortとunsigned int - 時には同じ範囲ですか?
答えて
実際にはshort
とint
の違いは何ですか?答えはshort
が狭いかもしれないが、int
と同じ幅であるかもしれないということです。それはプラットフォームから独立した、事実上すべてがわかっています。多くのプラットフォームには、32ビットのint
と16ビットのshort
がありますが、すべてではありません。
これは、Cのデータ型の歴史を説明するための有用なリンクです:
http://en.wikipedia.org/wiki/C_data_types
だからあなたのデータ型のサイズはプラットフォームに依存しますが、あなたのintはその後、長さが32ビットである場合2^32個の異なる数字のうちの1つを表すことができます(符号なしの場合は0〜4,294,967,295)。同様に、長さが16ビットの場合、2^16の異なる数字の1つを表すことができます(符号なしの場合は0〜65,535)。
このリンクはあなたにint型のサイズは32ビット(4バイト)とショートパンツは、16ビット(2バイト)されているVisual Studio 2005の、のための実装の詳細与える:あなたの正確な
http://msdn.microsoft.com/en-us/library/s3f49ktz(v=vs.80).aspx
を実装はコンパイラによって異なります。
質問の最後の部分については、shortの最大値よりも大きいintを短い値にキャストしようとすると、yes(最初の16ビットはおそらく最初の16ビットですが、テストする必要があります)念のため)。
まず、符号なしのintとshortが何であるかを理解する必要があります。
すべてがビットに分解されています。
短いは、各ビットが1または私は符号なし数値で、数値の範囲は、我々ができ、大きいと4ビット
1000 - Unsigned = 8
1000 - Signed = -8
1111 - Unsigned = 15 which is equal to 2^(# of bits) -1
1111 - Signed = -1
通知を実証する簡略化のために0であり、16ビットであります1111 = 15
しかし、符号付き数と を行い、最大の可能性は、 0111 = 7
今短いそれに
01を与え、16ビットを有しますsigned range of −32,768 to 32,767 [−(2^15) to 2^15 − 1]
Unsigned range: 0 to 65,53 = 2^16 -1
アンのInt我々は、変数タイプ名(短い、int型、長い、二重など)すべてにわたって特定のビット長を指すように有していると言うことができない
Signed:−2,147,483,648 to 2,147,483,647 = −(2^31) to 2^31 − 1
Unsigned: 0 to 4,294,967,295 = 2^16 -1
- 1. なぜサイズが同じでもunsigned short intがunsigned intに昇格するのはなぜですか?
- 2. unsigned short intの書式指定子とは何ですか?
- 3. はint型とunsigned int型
- 4. unsigned long long VS unsigned long long int
- 5. jshortをunsigned shortに変換する
- 6. テンプレートパラメータにunsigned int型へのconst unsigned int型の変換
- 7. unsigned char *をcのunsigned int *に変換する方法は?
- 8. C#unsigned intデフォルト値
- 9. unsigned int mysql in C#
- 10. unsigned shortとUSHORTの違いは何ですか?
- 11. 2バイトから4バイトをsigned/unsigned short/intに変換します
- 12. Cでは 'long unsigned'は 'unsigned long'と有効ですか?
- 13. 「のunsigned long int型」と「unsigned long型long int型」割り当て問題
- 14. ユーザ警告:BIGINT UNSIGNEDの値がnotifications_eventテーブルの範囲外です
- 15. unsigned int型の右シフトは常に '1'
- 16. BIGINT UNSIGNEDをINTに変換する
- 17. unsigned short + intの型は実装定義ですか?このコードを考えると
- 18. mysql Tinyint as unsigned
- 19. C++のunsigned charからintへ
- 20. unsigned shortをchar *に効率的に変換する*
- 21. Byte []をunsigned shortとして読み込みJava
- 22. unsigned int型の変数が負
- 23. なぜunsigned char << unsigned charの結果がunsigned charではない
- 24. Pythonの構造体、バイト順と整列間のネットワークアプリケーションとの違いのためにunsigned int型とunsigned long型
- 25. なぜhaskellではunsigned intがまれですか?
- 26. エラー: 'min(long unsigned int&、unsigned int&)'の呼び出しで一致する関数がありません。
- 27. (int)(unsigned char)(x)はCで何をしますか?
- 28. なぜunsigned intはCLSに準拠していませんか?
- 29. Javascriptでunsigned intを読み取るには?
- 30. 比較データと同じフィールドに範囲
なぜ3つの言語が挙げられますか? – Lion
Cのような音で、無関係の言語タグを削除します。 – djechlin
3言語では一般的ではありませんか? – mpluse