Como usar o main () Argumentos da função em C Programming
De volta aos velhos dias, os programas de destaque opções de linha de comando ou switches. Por exemplo, para compilar e ligar um programa C, você deve digitar algo como isto:
ex1501 cc ex1501.c -o
Os três pedaços de texto após o comando cc são opções ou switches. Eles também são argumentos para a função main (). Um programa pode ler esses argumentos, ainda hoje, quando o mundo corre sistemas operacionais gráficos. Tudo que você precisa fazer no seu código é examinar os argumentos para a função main ().
Como ler a linha de comando
Finja que é 1987 e você está escrevendo um programa que diz # 147 Olá # 148- para o usuário pelo nome. A maneira como você obter o nome do usuário é ter o seu código de engolir o primeiro pedaço de texto que aparece após o nome do programa na linha de comando. Esse código pode ser algo como Bem, Olá lá!
BEM, OLÁ LÁ!
#include int main (int argc, char * argv []) {if (argc> 1) printf ( "Saudações,% s n!", argv [1]) - retorno (0) -}
Linha 5 utiliza o valor int argc para determinar se todos os itens adicionais foram digitados após o nome do programa no prompt de comando.
Linha 6 usa o valor da cadeia (matriz de char) argv [1] para exibir o primeiro item após o nome do programa no prompt de comando.
Exercício 1: Digite o código-fonte do Bem, Olá lá! em um novo projeto. Construir e executar.
O programa exibe nenhuma saída, a menos que um argumento de linha de comando é especificado. Para que isso aconteça no Code :: Blocks, siga estes passos:
Escolha Argumentos Project-Set Programas '.
A caixa de diálogo Selecionar Destino aparece.
Digite o texto de linha de comando na parte de argumentos de programa da caixa de diálogo Select Target.
Clique no botão OK.
Execute o programa novamente para ver sua produção, atendendo aos argumentos de linha de comando.
Se você está programando no prompt de comando, você pode executar o programa como este:
ex1501 Sadraque
Pressione a tecla Enter para executar o programa.
O código usa apenas o primeiro argumento de linha de comando, por isso, se você digitar mais, eles são ignorados. Por exemplo:
ex1501 Sadraque Mesaque Abede-Nego
Na linha anterior, apenas o nome de Sadraque aparece na saída.
noções básicas de a Principal()argumentos 's
Quando você não está pensando em seu programa de aceitar quaisquer argumentos de linha de comando, você pode deixar parênteses da função () do principal vazio. Como isso:
int main ()
Quando os argumentos são usados em seu código, eles devem ser declarados. Usá-los parece com isso:
int main (int argc, char * argv [])
argc é o valor da contagem argumento. É um número inteiro que varia de 1 a Contudo muitos itens foram digitados após o nome do programa no prompt de comando.
* Argv [] é uma matriz de ponteiros de char. Você pode pensar nisso em vez de uma matriz de cadeias, que é como ele pode ser usado em seu código.
O código no contra-argumento meramente conta o número de argumentos digitados na linha de comando. Esse valor, argc, é exibido.
CONTADOR DE ARGUMENTO
#include int main (int argc, char * argv []) {printf ( "Você digitou% d argumentos n"., argc) -Retornar (0) -}
Exercício 2: Digite o código-fonte anterior. Construir e executar, digitando sem argumentos.
A função main () recebe informações sobre o argumento de linha de comando diretamente a partir do sistema operacional. A linha de comando é avaliado, e os argumentos são computados e referenciados. A contagem aparece como argc, e as referências são armazenados na matriz argv [].
Quando nenhum argumento é digitado - no Code :: Blocks, isso significa que a janela de argumentos de programa permanece vazia - você vê esta saída:
Você digitou 1 argumentos.
Isso porque o próprio nome do programa é considerado o primeiro argumento. Você pode provar isso, adicionando uma única linha para o código:
printf ( "Este argumento é% s. n", argv [0]) -
Exercício 3: Modificar seu código-fonte, adicionando a linha anterior, inseri-lo depois da instrução primeira printf (). Construir e executar.
a saída do programa agora exibe o nome do programa - muito provavelmente, um caminho completo para o programa, que é preciso, mas um pouco de exagero.
Exercício 4: Modificar o código novamente, desta vez acrescentando um loop for para trabalhar com todos os argumentos e exibição de cada um. Por exemplo, a saída pode ser parecido com isto:
begc4d $ ./ex1504 Sadraque Mesaque AbednegoArg # 1 = ./ex1504Arg#2 = ShadrachArg # 3 = MeshachArg # 4 = Abednego