Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W tym artykule
Stała całkowita to liczba dziesiętna (podstawa 10), ósemkowa (podstawa 8) lub szesnastkowa (podstawa 16), która reprezentuje wartość całkowitą. Użyj stałych całkowitych, aby reprezentować wartości całkowite, których nie można zmienić.
integer-constant
:
decimal-constant
integer-suffix
Zdecydować
octal-constant
integer-suffix
Zdecydować
hexadecimal-constant
integer-suffix
Zdecydować
decimal-constant
:
nonzero-digit
decimal-constant
digit
octal-constant
:
0
octal-constant
octal-digit
hexadecimal-constant
:
hexadecimal-prefix
hexadecimal-digit
hexadecimal-constant
hexadecimal-digit
hexadecimal-prefix
: jeden z
0x
0X
nonzero-digit
: jeden z
1 2 3 4 5 6 7 8 9
octal-digit
: jeden z
0 1 2 3 4 5 6 7
hexadecimal-digit
: jeden z
0 1 2 3 4 5 6 7 8 9
a b c d e f
A B C D E F
integer-suffix
:
unsigned-suffix
long-suffix
Zdecydować
unsigned-suffix
long-long-suffix
unsigned-suffix
64-bit-integer-suffix
long-suffix
unsigned-suffix
Zdecydować
long-long-suffix
unsigned-suffix
Zdecydować
64-bit-integer-suffix
unsigned-suffix
: jeden z
u U
long-suffix
: jeden z
l L
long-long-suffix
: jeden z
ll LL
64-bit-integer-suffix
: jeden z
i64 I64
Sufiksy i64
i I64
są specyficzne dla firmy Microsoft.
Stałe całkowite są dodatnie, chyba że są poprzedzone znakiem minus (-
). Znak minus jest interpretowany jako jednoargumentowy operator negacji arytmetycznej. (Zobacz Jednoargumentowe operatory arytmetyczne w celu uzyskania informacji o tym operatorze).
Jeśli stała całkowita zaczyna się od 0x
lub 0X
, jest szesnastkowa. Jeśli zaczyna się od cyfry 0
, jest to ósemka. W przeciwnym razie zakłada się, że jest to liczba dziesiętna.
Następujące stałe całkowite są równoważne:
28
0x1C /* = Hexadecimal representation for decimal 28 */
034 /* = Octal representation for decimal 28 */
Znaki odstępu nie mogą rozdzielać cyfr stałej całkowitej. W tych przykładach pokazano prawidłowe stałe dziesiętne, ósemkowe i szesnastkowe.
/* Decimal Constants */
int dec_int = 28;
unsigned dec_uint = 4000000024u;
long dec_long = 2000000022l;
unsigned long dec_ulong = 4000000000ul;
long long dec_llong = 9000000000LL;
unsigned long long dec_ullong = 900000000001ull;
__int64 dec_i64 = 9000000000002I64;
unsigned __int64 dec_ui64 = 90000000000004ui64;
/* Octal Constants */
int oct_int = 024;
unsigned oct_uint = 04000000024u;
long oct_long = 02000000022l;
unsigned long oct_ulong = 04000000000UL;
long long oct_llong = 044000000000000ll;
unsigned long long oct_ullong = 044400000000000001Ull;
__int64 oct_i64 = 04444000000000000002i64;
unsigned __int64 oct_ui64 = 04444000000000000004uI64;
/* Hexadecimal Constants */
int hex_int = 0x2a;
unsigned hex_uint = 0XA0000024u;
long hex_long = 0x20000022l;
unsigned long hex_ulong = 0XA0000021uL;
long long hex_llong = 0x8a000000000000ll;
unsigned long long hex_ullong = 0x8A40000000000010uLL;
__int64 hex_i64 = 0x4a44000000000020I64;
unsigned __int64 hex_ui64 = 0x8a44000000000040Ui64;