💡 Dica: Mnemônico: Unário → Multiplicativo → Aditivo → Deslocamento → Relacional → Igualdade → AND bit a bit → XOR → OR bit a bit → AND lógico → OR lógico → Condicional → Atribuição → Vírgula
5. Referência de Funções de Cabeçalhos Comuns
(1) stdio.h
Função
Finalidade
printf
Saída formatada para stdout
fprintf
Saída formatada para arquivo
sprintf
Saída formatada para string
snprintf
Saída formatada para string (segura)
scanf
Leitura formatada de stdin
fscanf
Leitura formatada de arquivo
sscanf
Leitura formatada de string
fopen
Abrir arquivo
fclose
Fechar arquivo
fgetc
Ler um caractere
fputc
Escrever um caractere
fgets
Ler uma linha
fputs
Escrever string
fread
Leitura binária
fwrite
Escrita binária
fseek
Definir posição do arquivo
ftell
Obter posição do arquivo
rewind
Resetar posição do arquivo para o início
feof
Verificar final do arquivo
ferror
Verificar erro do arquivo
fflush
Descarregar buffer
remove
Excluir arquivo
rename
Renomear arquivo
tmpfile
Criar arquivo temporário
perror
Imprimir mensagem de erro
(2) stdlib.h
Função
Finalidade
malloc
Alocação dinâmica de memória
calloc
Alocar e zerar memória
realloc
Realocar memória
free
Liberar memória
atoi
String para int
atol
String para long
atof
String para double
strtol
String para long (segura)
strtod
String para double (segura)
rand
Gerar número aleatório
srand
Definir semente aleatória
qsort
Ordenação rápida
bsearch
Busca binária
abs
Valor absoluto inteiro
labs
Valor absoluto long
exit
Terminar programa
atexit
Registrar função de saída
system
Executar comando do sistema
getenv
Obter variável de ambiente
(3) string.h
Função
Finalidade
strcpy
Cópia de string
strncpy
Cópia de string (segura)
strcat
Concatenação de strings
strncat
Concatenação de strings (segura)
strcmp
Comparação de strings
strncmp
Comparação de strings (com comprimento)
strlen
Comprimento da string
strchr
Encontrar caractere (da esquerda)
strrchr
Encontrar caractere (da direita)
strstr
Encontrar substring
strtok
Tokenização de string
memcpy
Cópia de memória
memmove
Movimentação de memória (permite sobreposição)
memset
Preenchimento de memória
memcmp
Comparação de memória
(4) math.h
Função
Finalidade
fabs
Valor absoluto de ponto flutuante
sqrt
Raiz quadrada
pow
Potência
ceil
Arredondar para cima
floor
Arredondar para baixo
round
Arredondar para o mais próximo
fmod
Resto de ponto flutuante
log
Logaritmo natural
log10
Logaritmo comum
sin
Seno
cos
Cosseno
tan
Tangente
asin
Arco seno
acos
Arco cosseno
atan
Arco tangente
atan2
Arco tangente (dois argumentos)
(5) ctype.h
Função
Finalidade
isalpha
É letra
isdigit
É dígito
isalnum
É letra ou dígito
isupper
É maiúscula
islower
É minúscula
isspace
É espaço em branco
ispunct
É pontuação
isprint
É imprimível
toupper
Converter para maiúscula
tolower
Converter para minúscula
(6) time.h
Função/Macro
Finalidade
time
Obter tempo atual
clock
Obter ticks de clock da CPU
localtime
Converter para tempo local
gmtime
Converter para tempo UTC
strftime
Formatar tempo
difftime
Calcular diferença de tempo
mktime
Converter tm para time_t
CLOCKS_PER_SEC
Ticks de clock por segundo
(7) assert.h
Função/Macro
Finalidade
assert(expr)
Asserção; terminar em caso de falha
NDEBUG
Desabilitar assert quando definido
(8) errno.h
Símbolo
Finalidade
errno
Variável global de código de erro
EDOM
Erro de domínio
ERANGE
Erro de intervalo
6. Referência Rápida de Intervalos de Tipos de Dados
P: Qual a diferenca entre sizeof e strlen?R:sizeof retorna o total de bytes incluindo \0; strlen retorna o comprimento sem \0.
P: O que e size_t?R: Um tipo inteiro sem sinal usado para tamanhos de objetos, geralmente alias de unsigned long.
P: O que significa %zu no printf?R: E o especificador de formato para size_t, introduzido no C99.
📖 Resumo
Referencia rapida de C: palavras-chave, especificadores de formato, caracteres de escape, precedencia e funcoes da biblioteca
📝 Exercícios
Liste todas as funcoes de I/O de arquivo em stdio.h
Escreva um programa para verificar tamanhos de tipos de dados na sua maquina
Use modificadores do printf para imprimir uma tabela formatada
Equipe Técnica Web-Tutorial
Uma plataforma de tutoriais mantida por diversos desenvolvedores. Cada tutorial é escrito e revisado por profissionais da área correspondente. Trabalhamos para manter nosso conteúdo preciso e confiável — se encontrar algum problema, avise-nos.