Partager via


Constantes entières C

Une constante entière est un nombre décimal (base 10), octal (base 8) ou hexadécimal (base 16) qui représente une valeur intégrale. Utilisez les constantes Integer pour représenter des valeurs entières qui ne peuvent pas être modifiées.

Syntaxe

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

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 : l'un des éléments suivants :
0x 0X

nonzero-digit : l'un des éléments suivants :
1 2 3 4 5 6 7 8 9

octal-digit : l'un des éléments suivants :
0 1 2 3 4 5 6 7

hexadecimal-digit : l'un des éléments suivants :
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-suffixopt
unsigned-suffix long-long-suffix
unsigned-suffix 64-bit-integer-suffix
long-suffix unsigned-suffixopt
long-long-suffix unsigned-suffixopt
64-bit-integer-suffix

unsigned-suffix : l'un des éléments suivants :
u U

long-suffix : l'un des éléments suivants :
l L

long-long-suffix : l'un des éléments suivants :
ll LL

64-bit-integer-suffix : l'un des éléments suivants :
i64 I64

Les suffixes i64 et I64 sont spécifiques à Microsoft.

Les constantes Integer sont positives, à moins d’être précédées du signe moins (-). Le signe moins est interprété comme l'opérateur de négation arithmétique unaire. Pour plus d’informations sur cet opérateur, consultez Opérateurs arithmétiques unaires.

Si une constante Integer commence par 0x ou 0X, elle est hexadécimale. Si elle commence par le chiffre 0, elle est octale. Sinon, elle est supposée être décimale.

Les constantes entières suivantes sont équivalentes :

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

Aucun espace blanc ne peut séparer les chiffres d'une constante Integer. Ces exemples illustrent certaines des constantes décimales, octales et hexadécimales valides.

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

Voir aussi

Constantes C