Segundo o site http://www.tiobe.com C é atualmente (setembro de 2012) a linguagem de programação mais utilizada mundialmente, (isso não quer dizer que é a que tem mais mercado de trabalho ou que seja a melhor).
C é já sofreu bastante implementações e foi utilizada como base para várias outras linguagens. Entre elas:
- C++
- JAVA
- C# (C Sharp)
Para entender a estrutura básica para um programa em C vamos utilizar um programa simples
main() { printf("Hello world!"); getch(); }
Para compilar o código foi utilizado o Dev-C++ da Bloodshed Software (http://www.bloodshed.net/devcpp.html, Acesso em 17/09/2012).
Vamos a estrutura:
- main()
Esta é a forma mais simples de se abrir uma função. E por regra, a função principal deve ser chamada de main.
- { }
Todo corpo da função deve ficar entre as chaves. Ela delimita o inicio ({) e o fim (}) da função (programa).
- printf("Hello world!");
printf é a principal função de saída do C. Todo o texto que deseja imprimir na tela deve ficar entre aspas, é possível ainda imprimir variáveis com o printf. Tanto os texto quanto as variáveis de saída devem ficar dentro dos parenteses.
- getch();
É uma função simples para esperar uma tecla do usuário. Só foi utilizada neste caso para que o programa fique parado. Sem ela o programa apareceria e fecharia sozinho.
Mais detalhes sobre o "main" e seus argumentos:
Existem várias outras formas de se abrir a função main, por exemplo:- int main()
- int main(void)
Porém o mais completo é:
int main(int argc, char *argv[])
Observe que entre os parenteses da função main foram declaradas duas variáveis. A variável argc do tipo inteiro e a variável argv do tipo caracter (o simbolo de asterisco na frente da variável indica que ela é uma variável ponteiro).
argc é de "Argument Counter" e serve para contar quantos argumentos o usuário passou para o programa.
argv: é de "Argumente Vector" e serve para armazenar os argumentos digitados pelo usuário.
Para ficar mais claro o uso deles faça o seguinte teste:
int main(int argc, char *argv[]) { int i; /* apresenta todos argumentos a partir de argv[0] */ for(i = 0; i <= argc; i++) { printf("%s \n\n", argv[i]); } /* imprimi a quantidade de argumentos */ printf("\nNumero de argumentos: %d",argc); //O número de argumentos será 4, pois o argc[0] armazena o nome do programa. getch(); return 0; }
Salvar como argumento.c e compilar o programa acima e executa-lo através da linha de comando (MS-DOS no windows).
Exemplo:
Repare que o meu programa foi armazenado em C:\, por isso utilizei o comando cd C:\ antes de executa-lo.
Logo após executei o meu programa "argumentos.exe" e na sua frente coloquei alguns argumento apenas para teste, o resultado foi:
argumentos.exe
George
aaa
bbb
ccc
<null>
O primeiro argumento (argv[0]) sempre será o nome do programa.
O 4 posteriores (George, aaa, bbb, ccc) foram digitados pelo usuário.
E o ultimo é referente ao caractere "/0" (null ou nulo). Toda matriz de caracteres em C termina com ele.