Partager via


Constantes entières C++

les constantes entières sont des éléments de données constants qui n'ont aucune partie fractionnaire ou exposant.Elles commencent toujours par un chiffre.Vous pouvez spécifier des constantes entières dans la décimale, octale, ou la forme hexadécimale.Ils peuvent spécifier les types signés ou non signés et longtemps ou bientôt des types.

Grammaire

  • entier-constante:
    entier-suffixe de décimale-constanteopt

    entier-suffixe d'octal-constanteopt

    entier-suffixe de hexadécimal-constanteopt

    C-char-séquence**'de'**

  • décimale-constante:
    une valeur différente de zéro-chiffre

    chiffre de décimale-constante

  • octal-constante:
    0

    octal-chiffre d'octal-constante

  • hexadécimal-constante:
    hexadécimal-chiffre de0x

    hexadécimal-chiffre de 0X

    hexadécimal-chiffre de hexadécimal-constante

  • une valeur différente de zéro-chiffre: un de type
    1 2 3 4 5 6 7 8 9

  • octal-chiffre: un de type
    0 1 2 3 4 5 6 7

  • hexadécimal-chiffre: un de type
    0 1 2 3 4 5 6 7 8 9

    a b c d E-F

    B C D E-F

  • entier-suffixe:
    long-suffixe non signé-suffixeopt

    non signé-suffixe de long-suffixeopt

  • non signé-suffixe: un de type
    u U

  • long-suffixe: un de type
    l L

  • entier-suffixe 64 bits:
    ll d'i64 LL

Pour spécifier des constantes entières à l'aide de la notation octale ou hexadécimale, utilisez un préfixe qui indique la base.Pour spécifier une constante entière d'un type intégral donné, utilisez un suffixe correspondant au type.

Pour spécifier une constante décimale, commencez la spécification par un chiffre différent de zéro.Par exemple :

int i = 157;   // Decimal constant
int j = 0198;  // Not a decimal number; erroneous octal constant
int k = 0365;  // Leading zero specifies octal constant, not decimal

Pour spécifier une constante octale, commencez la spécification à 0, suivi d'une séquence de chiffres dans la plage 0 à 7.Les chiffres compris entre 8 et 9 sont des erreurs en spécifiant une constante octale.Par exemple :

int i = 0377;   // Octal constant
int j = 0397;   // Error: 9 is not an octal digit

Pour spécifier une constante hexadécimale, commencez la spécification avec 0x ou 0X (le cas de « x » n'est pas termes), suivi d'une séquence de chiffres dans la plage 0 via 9 et a (ou A) via f (ou F).Les chiffres hexadécimaux a (ou A) via f (ou F) représentent des valeurs dans la plage 10 à 15.Par exemple :

int i = 0x3fff;   // Hexadecimal constant
int j = 0X3FFF;   // Equal to i

Pour spécifier un type non signé, utilisez u ou le suffixe d' U .Pour spécifier un long type, utilisez l ou le suffixe " l .Par exemple :

unsigned uVal = 328u;             // Unsigned value
long lVal = 0x7FFFFFL;            // Long value specified 
                                  //  as hex constant
unsigned long ulVal = 0776745ul;  // Unsigned long value

Pour spécifier un type entier 64 bits, utilisez le LL, le ll ou le suffixe i64.Par exemple :

// 64bitsuffix.cpp
#include <stdio.h>
enum MyEnum {
   IntType,
   Int64Type
};

MyEnum f1(int) {
   printf("in f1(int)\n");
   return IntType;
}

MyEnum f1(__int64) {
   printf_s("in f1(__int64)\n");
   return Int64Type;
}

int main() {
   MyEnum t1 = f1(0x1234), t2 = f1(0x1234i64);
}

00a1awxf.collapse_all(fr-fr,VS.110).gifSortie

in f1(int)
in f1(__int64)

Voir aussi

Référence

Littéraux C++