Como usar argumentos na função main()

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;
}