Costanti Integer CC Integer Constants

Un costante Integer è un numero decimale (base 10), ottale (base 8) o esadecimale (base 16) che rappresenta un valore integrale.An integer constant is a decimal (base 10), octal (base 8), or hexadecimal (base 16) number that represents an integral value. Utilizzare le costanti Integer per rappresentare i valori interi non modificabili.Use integer constants to represent integer values that cannot be changed.

SintassiSyntax

integer-constant:integer-constant:
    decimal-constant integer-suffixopt    decimal-constant integer-suffixopt
    octal-constant integer-suffixopt    octal-constant integer-suffixopt
    hexadecimal-constant integer-suffixopt    hexadecimal-constant integer-suffixopt

decimal-constant:decimal-constant:
    nonzero-digit    nonzero-digit
    decimal-constant digit    decimal-constant digit

octal-constant:octal-constant:
    0    0
    octal-constant octal-digit    octal-constant octal-digit

hexadecimal-constant:hexadecimal-constant:
    hexadecimal-prefix hexadecimal-digit    hexadecimal-prefix hexadecimal-digit
    hexadecimal-constant hexadecimal-digit    hexadecimal-constant hexadecimal-digit

hexadecimal-prefix: uno trahexadecimal-prefix: one of
    0x 0X    0x 0X

nonzero-digit: uno tranonzero-digit: one of
    1 2 3 4 5 6 7 8 9    1 2 3 4 5 6 7 8 9

octal-digit: uno traoctal-digit: one of
    0 1 2 3 4 5 6 7    0 1 2 3 4 5 6 7

hexadecimal-digit: uno trahexadecimal-digit: one of
    0 1 2 3 4 5 6 7 8 9    0 1 2 3 4 5 6 7 8 9
    a b c d e f    a b c d e f
    A B C D E F    A B C D E F

integer-suffix:integer-suffix:
    unsigned-suffix long-suffixopt    unsigned-suffix long-suffixopt
    unsigned-suffix long-long-suffix    unsigned-suffix long-long-suffix
    unsigned-suffix 64-bit-integer-suffix    unsigned-suffix 64-bit-integer-suffix
    long-suffix unsigned-suffixopt    long-suffix unsigned-suffixopt
    long-long-suffix unsigned-suffixopt    long-long-suffix unsigned-suffixopt
    64-bit-integer-suffix    64-bit-integer-suffix

unsigned-suffix: uno traunsigned-suffix: one of
    u U    u U

long-suffix: uno tralong-suffix: one of
    l L    l L

long-long-suffix: uno tralong-long-suffix: one of
    ll LL    ll LL

64-bit-integer-suffix: uno tra64-bit-integer-suffix: one of
    i64 I64    i64 I64

I suffissi i64 e I64 sono specifici di Microsoft.The i64 and I64 suffixes are Microsoft-specific.

Le costanti Integer sono positive a meno che non siano precedute da un segno meno (-).Integer constants are positive unless they are preceded by a minus sign (-). Il segno meno viene interpretato come operatore di negazione aritmetico unario.The minus sign is interpreted as the unary arithmetic negation operator. Per informazioni su questo operatore, vedere Operatori aritmetici unari.(See Unary Arithmetic Operators for information about this operator.)

Se una costante Integer inizia con 0x o 0X, è esadecimale.If an integer constant begins with 0x or 0X, it is hexadecimal. Se inizia con la cifra 0, è ottale.If it begins with the digit 0, it is octal. In caso contrario, si presume che sia decimale.Otherwise, it is assumed to be decimal.

Le costanti Integer seguenti sono equivalenti:The following integer constants are equivalent:

28
0x1C   /* = Hexadecimal representation for decimal 28 */
034    /* = Octal representation for decimal 28 */

Nessuno spazio vuoto può separare le cifre di una costante Integer.No white-space characters can separate the digits of an integer constant. Questi esempi illustrano alcune costanti decimali, ottali ed esadecimali valide.These examples show some valid decimal, octal, and hexadecimal constants.

    /* 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;

Vedere ancheSee also

Costanti CC Constants