Costanti Integer C++
Le costanti Integer sono elementi dati costanti che non hanno parti frazionarie o esponenti.Inizia sempre con una cifra.È possibile specificare le costanti Integer in formato decimale, ottale, o formato esadecimale.Possono specificare i tipi signed o senza segno e lunghi o improvvisamente senza tipi.
Grammatica
Integer-costante:
Integer-suffisso di numero decimale-costantescegliereInteger-suffisso di ottale-costantescegliere
Integer-suffisso di esadecimale-costantescegliere
“C char-sequenza“
numero decimale-costante:
diverso da zero-cifracifra di numero decimale-costante
ottale-costante:
0ottale-cifra di ottale-costante
esadecimale-costante:
0xesadecimale-cifra0Xesadecimale-cifra
esadecimale-cifra di esadecimale-costante
diverso da zero-cifra: uno di
1 2 3 4 5 6 7 8 9ottale-cifra: uno di
0 1 2 3 4 5 6 7esadecimale-cifra: uno di
0 1 2 3 4 5 6 7 8 9a b c d E-F
UNA B C D E-F
Integer-suffisso:
a lungo il suffisso di senza segno-suffissosceglieresenza segno-suffisso di a lungo suffissoscegliere
senza segno-suffisso: uno di
u Ua lungo suffisso: uno di
" l "Integer-suffisso a 64 bit:
ll di i64 LL
Per specificare le costanti Integer utilizzando la notazione ottale o esadecimale, utilizzare un prefisso che indica la base.per specificare una costante Integer di un tipo integrale specificato, utilizzare un suffisso che indica il tipo.
Per specificare una costante decimale, iniziare la specifica con una cifra diversa da zero.Di seguito è riportato un esempio:
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
Per specificare una costante ottale, iniziare la specifica con 0, seguito da una sequenza di cifre compreso tra 0 e 7.Le cifre 8 e 9 sono presenti nello specificare una costante ottale.Di seguito è riportato un esempio:
int i = 0377; // Octal constant
int j = 0397; // Error: 9 is not an octal digit
Per specificare una costante esadecimale, iniziare la specifica con 0x o 0X (il caso “x„ non fa quest'ultima), seguita da una sequenza di cifre nell'intervallo 0 in 9 e a o A) tramite f o F).cifre esadecimali a o A) tramite f o F) per rappresentare i valori compreso tra 10 e 15.Di seguito è riportato un esempio:
int i = 0x3fff; // Hexadecimal constant
int j = 0X3FFF; // Equal to i
Per specificare un tipo unsigned, utilizzare l'uno o l'altro u o u suffisso.Per specificare un tipo long, utilizzare l'uno o l'altro " o " suffisso.Di seguito è riportato un esempio:
unsigned uVal = 328u; // Unsigned value
long lVal = 0x7FFFFFL; // Long value specified
// as hex constant
unsigned long ulVal = 0776745ul; // Unsigned long value
Per specificare un tipo integrale a 64 bit, utilizzare il LL, il ll o il suffisso i64.Di seguito è riportato un esempio:
// 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);
}
Output
in f1(int)
in f1(__int64)