>> DAVID J. MALAN: Vamos a tomar las cosas un paso más, ahora.
Supongamos que yo no sólo quiero imprimir todos los de mi programa de
argumentos de la línea de comandos.
Pero yo, en cambio, quiero imprimir toda la caracteres individuales en cada uno de
mis argumentos de la línea de comandos, uno por línea, de modo que tras la ejecución de este
programa, simplemente veo una corriente de caracteres en la pantalla que
colectivamente son de mi secuencia de los argumentos de línea de comandos.
>> Bueno, ¿cómo puedo hacer esto?
Puedo mantener intacta mi bucle de antes por el que me iterativo desde i hasta
ARGC el fin de integrar el mismos argumentos de la línea de comandos.
Pero ahora, dentro de cada iteración de ese lazo, necesito ahora iterar sobre cada
de los personajes o caracteres en una cadena específica.
Así que para hacer eso, necesito un lazo más.
>> Vamos a añadir eso.
para int, llamémosle j, es igual a 0.
Ahora voy a tener que integrar hasta la longitud de la
cadena actual en ARGV.
Así que te voy a dar a mí mismo otra local, variables, lo llamaremos n, y establecer
que igual a la longitud de la cadena del argumento actual, que va a ser
que se encuentra en el soporte ARGV i punto y coma.
>> Permítanme ahora iterar desde j hasta hasta que n seguido de un
incrementar en cada iteración.
Ahora vamos a imprimir el individuo caracteres en la pantalla.
Printf% c esta vez seguido de una nueva línea, cerca de cotización, coma, y ​​ahora
necesitará el carácter de orden j en el argumento-i.
>> Así que para llegar a eso, puede simplemente especificar ARV soporte para i
conseguir el argumento-i.
Y entonces puedo bucear en un nivel más profundo y hacer un índice secundario de
soporte de j, paréntesis de cierre, punto y coma, en Guardar.
Y ahora vamos a compilar y ejecutar este programa.
>> Hacer ARGV2 -
no es exactamente lo que yo esperaba.
Vamos a desplazarse hasta el primer de estos mensajes de error.
Y en rojo aquí, vemos error, función de biblioteca implícitamente declarando
strlen con el tipo -
oh, espera un minuto.
Esta es la primera vez que he usado strlen, y no anticipé
quererlo en un primer momento, por lo que no me di incluir el archivo de cabecera que declara
una función de longitud de la cadena.
>> Así que en la parte superior de mi archivo, recuerdo, tengo CS50.h.
Tengo io.h. estándar
Pero resulta que, y yo sé que esto la lectura de la documentación, que necesito
un tercer archivo de cabecera si, en efecto, que desee utilizar la función strlen.
Esa función se declara en string.h.
>> Vamos a volver a guardar el archivo, compilar y ejecutar.
Y esta vez, lo hacemos no sólo ver cada uno de los argumentos.
En su lugar vemos cada uno de los argumentos un carácter a la vez.