sexta-feira, 23 de maio de 2008

C ANSI e C ISO

Durante o final da década de 1970, a linguagem C começou a substituir a linguagem BASIC como a linguagem de programação de microcomputadores mais usada. Durante a década de 1980, foi adotada para o uso nos PC IBM, e a sua popularidade começou a aumentar significativamente. Ao mesmo tempo, laboratórios Bell, começaram a trabalhar em um projeto onde se adicinavam construções de linguagens de programação orientada a objetos(C++), que ficou muito comum na plataforma Windows, e o C permanece mais popular no UNIX.
Em 1983, o Instituto Norte-Americano de Padrões(ANSI) formou um comite,X3j11, para estabelecer uma especificação do padrão da linguagem C. Após um processo longo e arduo, o padrõa foi completo em 1989 e retificado como ANSI X3. 153-1989 "Programming Language C". Esta versão da linguagem é frequentemente referida como "C ANSI". Em 1990 o padrão ANSI C, após sofrer algumas modificações menores, foi adotado pela Organização Internacional de Padrões(ISO) como ISO/IEC 9899:1990. Um dos objetivos do processo de padronização C ANSI foi o de produzir um sobreconjunto do C K&R, incorporando muitas das caracteristicas não-oficiais subsequentemente introduzidas. Entretanto, muitos programas tinham sido escritos e que não compilavam em certas plataformas, ou com um certo compilador, devido ao uso de bibliotecas de funções não-padrão e ao fato de alguns compiladores não aderirem ao C ANSI.

C99
Após o processo ANSI de padronização, as especificações da linguagem C permaneceram relativamente estáticas por algum tempo, enquanto que a linguagem C++ continuou evoluindo. Em 1995, a Normative Ammendment 1 criou uma versão nova da linguagem C, mais esta versão raramente é citada. O padrão ANSI foi submetido a uma revisão nos finais da década de 1990, levando à publicação da norma ISO 9899:1999 em 1999. Este padrão geralmente é chamado de "C99", este padrão foi adotado como ANSI em março de 2000.
O interesse em suportar as caracteristicas novas do C99 parece depender muito das entidades. Apesar do GCC(gnu C Compiler) e vários outros compiladores suportarem grande parte das novas caracteristicas, os compiladores mantidos pela Microsoft e pela Borland não.

fonte:
http://pt.wikibooks.org/wiki/Programar_em_C/Hist%C3%B3ria_da_linguagem_C


No *BSD:

#gcc codigoFonte.c -std=c89 -o executavel.exe
Para utilizar o padrão C ANSI 89 - Também é possivel trocar o -std=c89 por -ansi.

#gcc codigoFonte.c -std=c99 -o executavel.exe
Para compilar utilizando o padrão C99.

Recomendo a leitura do manual do GCC.
http://www.freebsd.org/cgi/man.cgi?query=cc&apropos=0&sektion=0&manpath=FreeBSD+7.0-RELEASE&format=html

Nenhum comentário: