Clique sobre os tópicos listados abaixo para navegar até o conteúdo desejado.

  1. Tipos numéricos
  2. Tipos derivados/referencidos
  3. Outros tipos
  4. Outros tipos std lib

A linguagem C possui tipos de dados primitivos para armazenar números inteiros, racionais, caracteres, cadeia de caracteres, vetores e outros tipos básicos.

A declaração de variáveis e constantes com esses tipos de dados serão vistos em C Básico: Variáveis e Constantes.

Para manipular dados númericos, a linguagem C fornece os tipos primitivos mostrados na tabela 1 abaixo. Clicando sobre os nomes dos tipos contidos na coluna Tipo, para ser direcionado para a sua respectiva seção.

Tab. 1: Tipos númericos
Tipo Uso Exemplo
int Númerico decimais(base 10) 10, -10
float Numéros racionais 1.99, -1.99
double Números racionais 1.99, -1.99
char caracteres e inteiros 0,'A', -128, 255

Os tipos de dados float e double, também são tipos ponto-flutuante. A diferença entre ambas está ligado à faixa de dados e precisão de casas decimais.

A sinalização é definida utilizando os modificadores, quando suportados, que serão vistos mais adiante.

Os tipos de dados derivados, são tipos de dados compostos em outros tipos. A linguagem C fornece os seguintes tipos de dados:

Tab. 2: Tipos derivados
Tipo Uso Exemplo
Vetor variáveis 1,2,3,...
Matriz matrizes -
String Textos "um texto"
Struct Tipos complexos -
Enum Constantes 0,1,2,3
Union União de tipos -
Ponteiro Endereço de memória -
Vetor/Matriz

Os tipos Vetor/Matriz para variáveis armazenadas de forma justaposta. As palavras vetor/matriz não são palavras reconhecidas pela linguagem.

String

O tipo String armazenam caracteres de forma justaposta. O nome string não é uma palavra reconhecida pela linguagem C sendo apelido para vetor de caracter.

Sintaxe
char nome_var[<tamanho>] = "string";
Struct

O tipos struct é composto de outros tipos dados como membros.

Sintaxe
struct nome_struct
{
  tipo_dado nome_membro1;
  tipo_dado nome_membro2;
  tipo_dado nome_membroN;
};
Enum

O tipo Enum é composto uma ou mais constantes com valores associados.

Sintaxe
enum nome_enum
{
  MEMBRO1, //0
  MEMBRO2,
  MEMBRON //N
};
Union

O tipo Union é composto de outros tipos primitivos e utilizam o mesmo espaço de memória.

Sintaxe
union nome_union
{
  tipo_dado membro1;
  tipo_dado membro2;
  tipo_dado membroN;
};
Ponteiro

O tipo Ponteiro armazenada endereço de memória de variáveis, funções e outros. Os nome Ponteiro não são palavras reconhecidas pela linguagem C sendo um apelido para o tipo de dado que é declarado usando o operador *.

Sintaxe
tipo_dado *nome_variavel;
null

A linguagem C possui uma palavra reservada NULL que é utilizado em conjunto com o tipo ponteiro indicando que uma variável não foi iniciada ou não possui valor associado.

void

Além do NULL, C possui o pseudo-tipo de dado void, visto na seção C Básico: Sintaxe, que é utilizado para identificar que funções não possuem retorno ou argumentos, e não pode ser usada na declaração de variáveis.

Biblioteca Nativa

Existem outros de dados nativos contidos em suas bibliotecas nativas que serão abordados em futuras atualizações.

  1. 02/09/2025 - revisão 3 - Ajustes: pontuais, tabs. 1/2, objetivos e sintaxes tipos derivados
  2. 04/20/2024 - revisão 2 - Correções pontuais; Adição de links na Tab.2
  3. 27/09/2023 - revisão 1 - Correção em link/referências, layout, erros gramaticais e outros
  4. 19/05/2023 - versão inicial