domingo, 15 de abril de 2012

Bibliotecas de Linguagem C


Principais bibliotecas usadas

Introdução
A Linguagem C nos proporciona uma grande variedade de programas em linguagem de alto nível, mas seria impossível não citar, antes de mais nada, suas bibliotecas padrão. Elas foram criadas para nos poupar de muita programação. Uma vez que a programação já está criada dentro da biblioteca. A biblioteca padrão do C (também conhecida como libc) é uma biblioteca de rotinas padronizada da Linguagem de Programação C que contém operações comuns como entrada e saída (I/O) e cadeia de caracteres. Diferente de outras linguagens como COBOL, Fortran e PL/I, o C não inclui palavras-chave nativas para tais tarefas, de forma que praticamente todos os programas em C fazem uso da biblioteca padrão.
São essas bibliotecas que possuem as funções que o pré-processador precisa para poder ler nossos programas, no Windows essas funções ficam agrupadas de acordo com o tipo, numa espécie de biblioteca de funções. Essas bibliotecas são arquivos que possuem a extensão .dll, chamamos simplesmente de DLL’s.
Em C as bibliotecas são muito importantes, pois a linguagem possui apenas os recursos mais básicos de que necessita. A Linguagem C não possui sequer funções de I/O (input/output – entrada e saída) para ler a partir do teclado e digitar na tela. Qualquer coisa que vá além da linguagem básica deve ser escrita por um programador. Geralmente, os trechos de código são colocados em bibliotecas para torná-los facilmente reutilizáveis. Vimos a bibliotecas padrão de I/O, entrada e saída padrão, ou stdio.h. As bibliotecas padrão existem para I/O padrão, funções matemáticas, manipulação da string de caracteres, manipulação de tempo e assim por diante. Você pode usar as bibliotecas em seus próprios programas para dividi-los em módulos. Isso os torna fáceis de entender, testar e depurar, como também possibilita a reutilização do código por outros programas que você criar.


Padrão ANSI
A biblioteca padrão do ANSI possui 24 cabeçalhos cada uma contendo uma ou mais declarações de funções, tipos de dados e macros. Em comparação com linguagens como Java, esta biblioteca padrão é minúscula. Ela fornece um conjunto básico de operações matemáticas, manipulação de cadeia de caracteres, conversão de tipos de dados e entrada e saída de arquivo e da tela. Não contém um conjunto padrão de containers como a biblioteca padrão do C++ (parte chamada de Standard Template Library), nem suporta interface gráfica. A vantagem desse sistema minimalista é que fornecer um ambiente funcional de ANSI C é muito mais simples que em outras linguagens, e, consequentemente, a portabilidade de C entre diferentes plataformas é uma tarefa relativamente simples.

Apresentamos a seguir a tabela com as 24 bibliotecas da Linguagem C, e mais adiante, apresentaremos as principais bibliotecas com exemplos práticos de suas funcionalidades.


Cabeçalhos do ANSI C


BIBLIOTECA

FUNÇÕES
<assert.h>
Macro para ajudar na detecção de erros lógicos e outros tipos de erros em versões de depurações de um programa.

<complex.h>
Conjunto de funções para manipular números complexos.

<ctype.h>
Funções usadas para classificar caracteres pelo tipo ou para converter entre caixa alta e baixa independentemente da codificação.

<errno.h>
Teste de códigos de erro reportados pelas funções de bibliotecas.

<fenv.h>
Controle de ponto flutuante.

<float.h>
Constantes de propriedades específicas de implementação da biblioteca de ponto flutuante, como a menor diferença entre dois números de ponto flutuante distintos (_EPSILON), a quantidade máxima de dígitos de acurácia(_DIG) e a faixa de números que pode ser representada(_MIN, _MAX).

<inttypes.h>
Conversão precisa entre tipos inteiros.

<iso646.h>
Programação na codificação de caracteres ISO 646.

<limits.h>
Constantes de propriedades específicas de implementação da biblioteca de tipos inteiros, como a faixa de números que pode ser representada (_MIN, _MAX).

<locale.h>
Constante para setlocale() e assuntos relacionados.

<math.h>
Funções matemáticas comuns em computação.

<setjmp.h>
Macros setjmp e longjmp, para saídas não locais.

<signal.h>
Tratamento de sinais.

<stdarg.h>
Acesso dos argumentos passados para as funções com parâmetro variável.
<stdbool.h>
Definição do tipo de dado booleano.

<stdint.h>
Definição de tipos de dados inteiros.

<stddef.h>
Diversos tipos e macros úteis.

<stdio.h>
Manipulação de entrada e saída.

<stdlib.h>
Diversas operações, incluindo conversão, geração de números pseudo-aleatórios, alocação de memória, controle de processo, sinais, busca e ordenação.

<strng.h>
Tratamento de cadeia de caracteres.

<tgmath.h>
Funções matemáticas.

<time.h>
Conversão de tipos de dados de data e horário.

<wchar.h>
Manipulação de caractere wide, usado para suportar diversas línguas.

<wctype.h>
Classificação de caracteres wide 



Exemplos práticos de C

Apresentamos a seguir as principais bibliotecas com exemplos práticos de suas funcionalidades com alguns programas bem simples para o seu melhor entendimento.

A biblioteca <stdio.h>
Standard Input Output(entradas e saídas padrão): Este cabeçalho contém a definição da estrutura FILE, usada para todas as entradas(input) e saídas(output), além das definições de todas as funções que lidam com a abertura, fechamento, etc, de arquivos. A famosa função printf  também é definida aqui, juntamente com sprintf, fprintf e toda a família de funções relacionadas com esta biblioteca.



Como podemos perceber, no exemplo acima, temos a demonstração de entrada e saída ou input/output.





A biblioteca <math.h>
Funções matemáticas: sin, cos, tan, log, exp, etc. Aqui encontramos trigonometria(sin, cos, tan, atan, etc.), arredondamentos(ceil, floor), logaritmos(log, exp, log10, etc.), raiz quadrada e cúbica(sqrt, cbrt), constantes como PI e as quatro operações matemáticas mais simples como somar, subtrair, multiplicar e dividir.
Vejamos então, alguns exemplos do uso dessa biblioteca na prática, para um melhor entendimento do leitor a respeito de suas funcionalidades. No primeiro exemplo apenas uma soma simples e, os seguintes, um pouco mais complexos para visualização de como eles funcionam.


Aqui vemos o programa escrito antes de o compilar.

Abaixo, após sua compilação, vemos o programa executado.

Biblioteca  <math.h> com float (número decimal)

Abaixo um programa escrito em Linguagem C com float (número decimal).

Em seguida o mesmo programa depois de compilado:

A biblioteca <stdlib.h>

Diversas operações, incluindo conversão, geração de números pseudo-aleatórios, alocação de memória, controle de processo, sinais, busca e ordenação.

Abaixo vemos um exemplo de um programa usando a biblioteca <stdlib.h>




Em seguida vemos o programa depois de compilado sendo executado.

Esses são apenas alguns exemplos de como funcionam as bibliotecas de Linguagem de Programação em C, esperamos ter atendido aos interesses de todos deixando claras as suas utilizações no dia a dia da programação em Linguagem C.

Bibliotecas de Linguagem C

Bibliotecas de Linguagem C

Principais bibliotecas usadas Introdução A Linguagem C nos proporciona uma grande variedade de programas em linguagem de alto nível, mas...