Este artigo visa dar uma introdução a respeito das inúmeras
bibliotecas existentes não só no Linux para o programador iniciante.
Entre as inúmeras bibliotecas existentes podemos citar algumas de uso
mais comum:
stdio
string
ctype
Estas 3 bibliotecas costumam ser as mais usadas para diversas
finalidades.
Para usar uma biblioteca ou cabeçalho (header) no C fazemos o seguinte:
[1] Comentário enviado por ron_lima em 24/11/2004 - 13:05h
Muito bom o artigo!
Porém, gostaria de adicionar alguns conceitos interessantes.
A diretiva de compilação include é usada para trazer para a unidade de tradução corrente um arquivo texto que será processado pelo pré-processador. O arquivo de cabeçalho (do inglês header) é usado para definir-se tipos de dados, macros e protótipos de funções. A verdade é que o arquivo de cabeçalho pode ser entendido como a "interface" de uma biblioteca.
A biblioteca em si está pré-compilada e é ligada no seu executável final pelo linker. No caso dos cabeçalhos descritos no artigo, todos se referem à mesma biblioteca: a biblioteca Standard C. Os cabeçalhos são uma forma de organizar as interfaces da biblioteca como um todo.
Uma curiosidade: A biblioteca standard C tem como principal característica o fato de ser totalmente escrita em linguagem C. É possível implementar TODAS as rotinas da biblioteca standard C usando puramente a linguagem C para isso. Uma boa referência para leitura neste aspecto é o excelente livro "A Biblioteca Standard C", de autoria de P.J. Plauger, um dos autores do padrão ANSI e participante do X3J11.
[2] Comentário enviado por nick_skyp em 15/01/2005 - 04:06h
Olá!
primeiramente, parabéns pelo artigo!
com certeza quem estah iniciando a programação em C, precisa essencialmente dos conceitos citados no seu artigo...
Mas na verdade minha duvida naum eh exatamente sobre "as bibliotecas citadas, em si".. eh mais uma curiosidade.. sobre um tipo de funçao fornecida pela "interface\header" da STDIO, que são as funções de I\O formatada (printf,scanf), as quais tein numero variável de parametros (e podem tbm ser passados diferentes tipos de variaveis como parametro), para especificar melhor, no header da stdio consta a seguinte declaração:
int printf ( const char * str , ... );
isso me xamou mto a atenção, jah pesquisei bastante, no entanto naum axei o q eu qeria..
a duvida eh: a implementação desse tipo de funcao (com o parametro '...') eh feita em C ??
entaum... se alguein aeh tiver conhecimento sobre esse recurso do C, seria muito interessante esclarecer melhor o uso dele...
talvez isso jah sejah um pouco avançado para esta seção de artigos.. ms foi a oportunidade q encontrei de perguntar sobre isso..
ah.. parabeins ron_lima pelo comentario..
por enquanto eh isso..
[3] Comentário enviado por ron_lima em 17/01/2005 - 05:51h
A biblioteca STDC é inteiramente escrita em C. Mesmo as funções com número de parâmetros variáveis, como o printf, são inteiramente escritas em C. Este tipo de função, que utiliza esta sintaxe não usual, permite que você a chame com qualquer quantidade de parâmetros. Por exemplo:
printf ("Caro %s, sua idade é %d\n", nome, idade);
printf ("Seu computador quebrou\n");
printf ("%d = %d + %d - %d\n", a, b, c, d);
É possível que você escreva sua própria função utilizando este esquema. Explicar como isso funciona, porém, é assunto para um artigo inteiro e não um comentário :) De qualquer forma, procure se informar a respeito do conjunto de macros va_start, va_arg e va_end e sobre o cabeçalho stdarg.h. Tudo isso é padronizado pelo STDC e está disponível em qualque compilador C que siga o padrão.
[6] Comentário enviado por removido em 04/11/2013 - 17:34h
O artigo ficou ótimo! Abriu caminho para conhecer todas aquelas coleções de bibliotecas que existem no linux. Agora, só uma correção, em /usr/include tem somente a declaração das funções, não o código em si.
A respeito, teria alguma obra ou site que tem a documentação de todas as bibliotecas padrão em c?