> For the complete documentation index, see [llms.txt](https://mentebinaria.gitbook.io/manual-da-linguagem-gnu-c/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://mentebinaria.gitbook.io/manual-da-linguagem-gnu-c/12.-constantes/constantes-de-caracteres.md).

# 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:

```c
'\a' ⇒ 7       /* alarme, CTRL-g */
'\b' ⇒ 8       /* backspace, BS, CTRL-h */
'\t' ⇒ 9       /* tabulação, TAB, CTRL-i */
'\n' ⇒ 10      /* nova linha, CTRL-j */
'\v' ⇒ 11      /* tabulação vertical, CTRL-k */
'\f' ⇒ 12      /* avanço de formulário, CTRL-l */
'\r' ⇒ 13      /* retorno de carro, RET, CTRL-m */
'\e' ⇒ 27      /* caractere de escape, ESC, CTRL-[ */
'\\' ⇒ 92      /* caractere de barra invertida, \ */
'\'' ⇒ 39      /* caractere de aspas simples, ' */
'\"' ⇒ 34      /* caractere de aspas duplas, " */
'\?' ⇒ 63      /* ponto de interrogação, ? */
```

‘\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.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://mentebinaria.gitbook.io/manual-da-linguagem-gnu-c/12.-constantes/constantes-de-caracteres.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
