Constantes de Caracteres
Uma constante de caractere é escrita com aspas simples, como em 'c'
. No caso mais simples, c
é um único caractere ASCII que a constante deve representar. A constante tem o tipo int
, e seu valor é o código do caractere correspondente. Por exemplo, 'a'
representa o código do caractere para a letra ‘a’: 97, no caso.
Para colocar o caractere ‘'’ (aspas simples) na constante de caractere, use a barra invertida (‘\’) como escape. Essa constante de caractere fica assim: '\''
. A barra invertida aqui funciona como um caractere de escape, e tal sequência, começando com ‘\’, é chamada de sequência de escape.
Para colocar o caractere ‘\’ (barra invertida) na constante de caractere, use outra barra invertida como escape. Essa constante de caractere fica assim: '\\'
.
Aqui estão todas as sequências de escape que representam caracteres específicos em uma constante de caractere. Os valores numéricos mostrados são os códigos ASCII correspondentes, como números decimais:
‘\e’ é uma extensão do GNU C; para seguir o padrão C, escreva ‘\33’. (O número após a barra invertida é octal.) Para especificar uma constante de caractere usando decimal, use um cast; por exemplo, (unsigned char) 27
.
Você também pode escrever códigos de caracteres em octal e hexadecimal como ‘\octalcode’ ou ‘\xhexcode’. Decimal não é uma opção aqui, então códigos octais não precisam começar com ‘0’.
O valor da constante de caractere tem o tipo int
. No entanto, o código do caractere é tratado inicialmente como um valor do tipo char
, que é então convertido para int
. Se o código do caractere for maior que 127 (0177 em octal), o int
resultante pode ser negativo em uma plataforma onde o tipo char
tem 8 bits e é com sinal.
Atualizado
Isto foi útil?