Manual da Linguagem GNU C
Doar para o tradutorDoar para os autores
  • Linguagem GNU C
  • Prefácio
  • 1️1. O Primeiro Exemplo
    • Fibonacci Recursiva
      • Cabeçalho da Função
      • Corpo da Função
    • Pilha e Estouro de Pilha
    • Fibonacci Iterativa
  • 📦2. Um Programa Completo
    • Exemplo de um Programa Completo
    • Explicação do Programa Completo
    • Programa Completo Linha por Linha
    • Compilando o Programa de Exemplo
  • 👜3. Armazenamento e Dados
  • 🥑4. Além dos Inteiros
    • Um Exemplo com Números Não Inteiros
    • Um Exemplo com Arrays
    • Variações para o Exemplo com Array
  • ✍️5. Sintaxe Lexical
    • Escreva Programas em Inglês!
    • Caracteres
    • Espaços em Branco
    • Comentários
    • Identificadores
    • Operadores e Pontuação
    • Continuação de Linha
  • ➕6. Aritmética
    • Aritmética Básica
    • Aritmética de Inteiros
    • Estouro de Inteiros
      • Estouro de Inteiros sem Sinal
      • Estouro de Inteiros com Sinal
    • Aritmética em Modo Misto
    • Divisão e Resto
    • Comparações Numéricas
    • Operações de Deslocamento
      • Deslocar Gera Novos Bits
      • Advertências em Operações de Deslocamento
      • Hacks com Deslocamento
    • Operações Bit-a-bit
  • 🟰7. Expressões de Atribuição
    • Atribuição Simples
    • Lvalues
    • Atribuição Modificadora
    • Operadores de Incremento e Decremento
    • Pós-incremento e Pós-decremento
    • Armadilha: Atribuição em Subexpressões
    • Escreva Atribuições em Instruções Separadas
  • 🕹️8. Expressões de Controle de Execução
    • Operadores Lógicos
    • Operadores Lógicos e Comparações
    • Operadores Lógicos e Atribuições
    • Expressão Condicional
    • Operador Vírgula
  • 🐫9. Gramática dos Operadores Binários
  • 🏁10. Ordem de Execução
    • Reordenação de Operandos
    • Associatividade e Ordenação
    • Pontos de Sequência
    • Pós-incremento e Ordenação
    • Ordenação de Operandos
    • Otimização e Ordenação
  • 🎲11. Tipos Primitivos
    • Tipos de Dados Inteiros
      • Inteiros Básicos
      • Tipos Com ou Sem Sinal
      • Inteiros Estreitos
      • Conversão entre Tipos Inteiros
      • Tipo Booleano
      • Variações de Inteiros
    • Tipos de Dados de Ponto Flutuante
    • Tipos de Dados Complexos
    • O Tipo Void
    • Outros Tipos de Dados
    • Designadores de Tipos
  • 🪨12. Constantes
    • Constantes do Tipo Inteiro
    • Tipos de Dados de Constantes do Tipo Inteiro
    • Constantes de Ponto Flutuante
    • Constantes de Números Imaginários
    • Constantes de Caracteres
    • Constantes do Tipo String
    • Constantes do Tipo String UTF-8
    • Códigos de Caracteres Unicode
    • Constantes do Tipo Caractere Largo
    • Constantes do Tipo String Larga
  • 📐13. Tamanho de Tipo
  • Apêndices
    • F - GNU Free Documentation License
    • G - GNU General Public License
Fornecido por GitBook
Nesta página

Isto foi útil?

Editar no GitHub
Exportar como PDF
  1. 11. Tipos Primitivos

Designadores de Tipos

Algumas construções em C exigem uma forma de designar um tipo de dado específico, independente de qualquer variável ou expressão que tenha esse tipo. Isso é feito com um designador de tipo. Construções que precisam de um designador incluem casts (veja ) e sizeof (veja ).

Também usamos designadores de tipos para nos referirmos ao tipo de um valor em C, então você verá muitos designadores de tipo neste manual. Quando dizemos, "O valor tem tipo int," int é um designador de tipo.

Para criar o designador de qualquer tipo, imagine uma declaração de variável para uma variável desse tipo e exclua o nome da variável e o ponto e vírgula final.

Por exemplo, para designar o tipo de inteiros de palavra completa, começamos com a declaração de uma variável foo com esse tipo:

int foo;

Então, excluímos o nome da variável foo e o ponto e vírgula, deixando apenas int. Portanto, o designador de tipo para este tipo é int.

E quanto a inteiros longos sem sinal? A partir da declaração:

unsigned long int foo;

determinamos que o designador é unsigned long int.

Seguindo este procedimento, o designador para qualquer tipo primitivo é simplesmente o conjunto de palavras-chave que especifica esse tipo em uma declaração. O mesmo é válido para tipos compostos como estruturas, uniões e enumerações.

Os designadores para tipos de ponteiros seguem a regra de excluir o nome da variável e o ponto e vírgula, mas o resultado não é tão simples. Veja , como parte do capítulo sobre ponteiros. Veja , para designadores de tipos de arrays.

Para entender que tipo um designador representa, imagine um nome de variável inserido no lugar certo no designador para fazer uma declaração válida. Qual seria o tipo com o qual essa variável teria sido declarada? Esse é o tipo que o designador designa.

AnteriorOutros Tipos de DadosPróximo12. Constantes

Atualizado há 5 meses

Isto foi útil?

🎲