>> DAVID J. Malan: Нека вземем нещата една стъпка по-нататък, сега.
Да предположим, че аз не просто искам , за да отпечатате всички от програмата ми
аргументи командния ред.
Но, вместо това, искате да разпечатате всички отделните символи във всяка от
моите аргументи на командния ред, по един на линия, така, че при използването на този
програма, аз просто видите поток от герои на екрана, че
заедно са от моя последователност на аргументи от командния ред.
>> Е, как мога да направя това?
Мога да запази непокътната моята линия от преди при което аз итеративен от I до този
ARGC, за да се интегрират над река командния ред самите аргументи.
Но сега, в рамките на всяка итерация на този контур, имам нужда да се обхождане на всеки
от героите или овъгли в специфичен низ.
Така че, за да направи това, имам нужда от още един цикъл.
>> Нека добавим, че.
за ПНА, нека го наречем J, е равна на 0.
Сега аз ще трябва да се интегрират нагоре, докато дължината на
текущия низ в ARGV.
Така че позволете ми да се даде друга местна променлива, ние ще го наричаме N, и да зададете
че равна на дължината на низ текущия аргумент, който ще бъде
намерено в ARGV скоба и запетая.
>> Позволете ми сега да обхождане от J до до п последвано от
нарастване на всяка итерация.
Нека сега отпечатате индивида героите на екрана.
ФОРМАТ% в това време, последвано от ново линия, в близост цитат, запетая, а сега
нужда от к-ти характер в аргумента-тото.
>> Така че, за да получите по това, че мога просто уточни ARV скоба аз да
получите аргумента I-та.
И тогава може да се потопите в едно ниво по-дълбоко и направи вторичен индекс на
скоба J, в близост скоби, точка и запетая, Save.
И нека сега да състави и стартирате тази програма.
>> Направете ARGV2 -
не е съвсем това, което аз очаквах.
Нека превъртете до първия на тези съобщения за грешки.
И в червено тук, ние виждаме, грешка, неявно деклариране функция библиотека
strlen с тип -
О, чакай малко.
Това е първият път, когато съм използвал strlen, и аз не очаквах
го искат на първо място, така че аз не включва заглавната част на файла, който обявява
функция дължина низ.
>> Така в началото на моето досие, Спомнете си, имам CS50.h.
Имам стандарт io.h.
Но се оказва, че и аз знам това от Прочитането на документацията, че имам нужда
файл третия удар с глава, ако аз, наистина, искате да използвате функцията strlen.
Тази функция е обявен в string.h.
>> Нека да запишете отново файла, компилирате и стартирате.
И този път, ние не само виждат един от аргументите.
Ние вместо да се виждат един от аргументите един символ в даден момент.