1 00:00:00,000 --> 00:00:00,270 2 00:00:00,270 --> 00:00:02,870 >> DAVID J. MALAN: Suponha agora que queremos para imprimir toda a linha de comando 3 00:00:02,870 --> 00:00:05,900 argumentos que um usuário digita no rápida e não apenas o primeiro desses 4 00:00:05,900 --> 00:00:08,710 palavra que ele ou ela digita após o nome do programa. 5 00:00:08,710 --> 00:00:12,480 Bem, para fazer isso, simplesmente precisa de um construção familiar, um loop, e A 6 00:00:12,480 --> 00:00:14,070 instrução printf familiar. 7 00:00:14,070 --> 00:00:16,750 Então, vamos combinar os dois - 8 00:00:16,750 --> 00:00:17,670 para. 9 00:00:17,670 --> 00:00:22,210 >> E agora eu quero iterar sobre todos os argumentos de linha de comando em ARGV. 10 00:00:22,210 --> 00:00:25,300 Agora, felizmente, eu tenho acesso para o número total de ARGC. 11 00:00:25,300 --> 00:00:26,830 Então, vamos começar por aí. 12 00:00:26,830 --> 00:00:35,140 >> int eu recebo 0; i é menos que argc; i + +. 13 00:00:35,140 --> 00:00:38,170 Agora, a construção de loop Eu configurei aqui é simplesmente vai integrar a partir de 14 00:00:38,170 --> 00:00:42,800 zero até o número total de argumentos em ARGV. 15 00:00:42,800 --> 00:00:45,580 E agora nós precisamos de algo dentro cada iteração deste loop. 16 00:00:45,580 --> 00:00:50,430 Vamos, simplesmente, imprimir o i-th tal argumento em ARGV. 17 00:00:50,430 --> 00:00:57,960 >> Abrir suporte próximo suporte printf% s barra invertida n perto citação vírgula. 18 00:00:57,960 --> 00:00:59,830 E agora eu preciso para ligar o valor. 19 00:00:59,830 --> 00:01:04,430 Então, se eu quiser que o argumento i-th em ARGV, que pode ser expresso como ARGV 20 00:01:04,430 --> 00:01:08,370 i suporte, perto parênteses, ponto e vírgula. 21 00:01:08,370 --> 00:01:11,930 Vamos salvar o arquivo, compilar -lo e executá-lo. 22 00:01:11,930 --> 00:01:15,980 >> Faça ARGV1 dot cortar ARGV1. 23 00:01:15,980 --> 00:01:19,150 Mas antes que eu aperte enter, que deveria provavelmente fornecer algumas palavras adicionais 24 00:01:19,150 --> 00:01:20,320 no prompt de comando. 25 00:01:20,320 --> 00:01:22,710 Então, eu estou indo para algo como [? foo,?] 26 00:01:22,710 --> 00:01:24,050 bar, e Baz. 27 00:01:24,050 --> 00:01:26,570 E agora eu vou bater Enter. 28 00:01:26,570 --> 00:01:30,340 Como esperado, o que eu vejo não só a nome do programa, o qual é em argv0. 29 00:01:30,340 --> 00:01:32,880 Eu também vejo [? foo,?] bar e Baz. 30 00:01:32,880 --> 00:01:34,597