DAVID J. MALAN: Vamos levar as coisas mais um passo, agora. Suponha que eu não quero apenas para imprimir todo o meu programa de Argumentos da linha de comando. Mas eu, ao contrário, deseja imprimir todas as caracteres individuais em cada um dos meus argumentos de linha de comando, um por A linha, de modo que após a execução deste programa, eu simplesmente ver um fluxo de caracteres na tela que coletivamente são de minha sequência de argumentos de linha de comando. 

Bem, como eu posso fazer isso? Eu posso manter intacta meu loop de antes pelo qual eu iterativo de i até ARGC para integrar todo o próprios argumentos de linha de comando. Mas agora, dentro de cada iteração do que loop, eu preciso fazer uma iteração agora sobre cada dos personagens ou caracteres em uma seqüência específica. Então, para fazer isso, eu preciso de mais um loop. 

Vamos adicionar isso. para int, vamos chamá-lo j, é igual a 0. Agora estou indo a necessidade de integrar até o comprimento do corda corrente em ARGV. Então deixe-me dar-me um outro local, variável, vamos chamá-lo de n, e definir que igual ao comprimento da corda do argumento atual, que vai ser encontrada em suporte ARGV i ponto e vírgula. 

Deixe-me interar do j-se até n seguido por um incrementar em cada iteração. Vamos agora imprimir o indivíduo caracteres na tela. Printf% c este tempo, seguido por um novo linha, citações perto, vírgula, e agora eu precisa do caráter j-th no argumento de i-th. 

Assim, para obter com isso, eu posso simplesmente especificar suporte ARV i para obter o argumento de i-th. E então eu posso mergulhar em um nível mais profundo e fazer um índice secundário de suporte j, perto parênteses, ponto e vírgula, em Salvar. E vamos agora compilar e executar este programa. 

Faça ARGV2 - Não é bem o que eu estava esperando. Vamos percorrer até o primeiro dessas mensagens de erro. E em vermelho aqui, vemos erro, implicitamente declarando função de biblioteca strlen com o tipo - oh, espere um minuto. Esta é a primeira vez que eu usei strlen, e eu não antecipei querendo em um primeiro momento, então eu não incluiu o arquivo de cabeçalho que declara uma função comprimento da corda. 

Então, na parte superior do meu arquivo, recall, tenho CS50.h. Tenho io.h. padrão Mas acontece, e eu sei que isso ler a documentação, o que eu preciso um terceiro arquivo de cabeçalho, se eu, de fato, quer usar a função strlen. Essa função é declarada em string.h. 

Vamos salvar novamente o arquivo, compilar e executar. E, desta vez, nós não apenas ver cada um dos argumentos. Nós, ao contrário ver cada um dos argumentos um carácter de cada vez.