Todos os programas construídos até então eram chamados na linha de comandos do sistema operacional apenas com o nome do executável gerado pelo compilador. Por exemplo, no sistema operacional Windows, para o código do programa de matrizes esparsas no arquivo matrizes.c, fazia-se sua chamada na linha de comandos da seguinte maneira:
C:\>matrizes
Agora, no entanto, alguns atributos devem ser passados à função main() logo na chamada do programa. Para o exemplo deste laboratório, seja o programa gerado com o nome relatorio.exe, a chamada a ele na linha de comandos poderia ser feita da seguinte maneira:
C:\>relatorio c:\cliente.txt c:\produto.txt c:\pedido.txt c:\num_pedido.txt
Para que o programa possa receber essas informações (cadeias de caracteres), é necessário alterar a declaração da função main() para:
int main(int argc, char *argv[])
Os argumentos dessa função são:
Como exemplo, o programa a seguir imprime a chamada da linha de comandos feita pelo usuário:
#include < stdio.h > int main(int argc, char *argv[]) { int passo; for (passo = 0; passo < argc; passo++) printf("%s ", *(argv + passo) ); return 0; }