Constantes do Tipo Inteiro

Uma constante do tipo inteiro consiste em um número que especifica o valor, seguido opcionalmente por sufixos para especificar o tipo de dado.

As constantes mais simples do tipo inteiro são números escritos na base 10 (decimal), como 5, 77 e 403. Uma constante decimal não pode começar com o caractere ‘0’ (zero), pois isso a tornaria uma constante octal.

Você pode obter o efeito de uma constante do tipo inteiro negativa colocando um sinal de menos no início. Em termos gramaticais, isso é uma expressão aritmética, e não uma constante, mas se comporta como uma constante verdadeira.

As constantes do tipo inteiro também podem ser escritas em octal (base 8), hexadecimal (base 16) ou binário (base 2).

  • Uma constante octal começa com o caractere ‘0’ (zero), seguido por qualquer número de dígitos octais (‘0’ a ‘7’):

0      // zero
077    // 63
0403   // 259

Tecnicamente, a constante 0 é uma constante octal, mas podemos considerá-la decimal, pois o valor é o mesmo.

  • Uma constante hexadecimal começa com ‘0x’ (maiúsculo ou minúsculo), seguido por dígitos hexadecimais (‘0’ a ‘9’, assim como ‘a’ até ‘f’ em maiúsculo ou minúsculo):

0xff   // 255
0XA0   // 160
0xffFF // 65535
  • Uma constante binária começa com ‘0b’ (maiúsculo ou minúsculo), seguida por bits (cada um representado pelos caracteres ‘0’ ou ‘1’):

0b101  // 5

As constantes binárias são uma extensão do GNU C e não fazem parte do padrão C.

A partir do C23, as constantes binárias fazem parte do padrão.

Às vezes, é necessário um espaço após uma constante do tipo inteiro para evitar confusão léxica com os tokens seguintes. Veja Números Inválidos.

Atualizado

Isto foi útil?