DAVID J. Malan: Le të bëjmë gjëra të një hap më tej, tani. Le të supozojmë se unë nuk duan vetëm për të shtypur të gjitha program sime argumente të komandës. Por unë, në vend të kësaj, duan të shtypura të gjitha karaktere individuale në secilën prej argumentat e mia command line, një për line, kështu që në drejtimin ky program, unë thjesht shoh një rrymë e karaktere në ekran që kolektivisht janë nga sekuencat e mia e argumenteve të linjës komanduese. 

E pra, si mund ta bëni këtë? Unë mund të mbani të paprekur loop ime nga prania ku unë përsëritës nga i deri ARGC në mënyrë që të integrohen mbi vetë argumente command line. Por tani, në çdo përsëritje e që loop, kam nevojë për të tani iterate mbi njëri nga personazhet apo chars në një varg të caktuar. Pra, për të bërë këtë, kam nevojë për një lak më shumë. 

Le të shtoj se. për int, le të thërrasë atë j, është e barabartë me 0. Tani unë jam duke shkuar për të duhet të integrojë deri në gjatësinë e string aktuale në ARGV. Pra më lejoni të jap vetes një tjetër lokal variabël, ne do të thërrasë atë n, dhe vendosur që të barabartë me gjatësinë e vargut te argumenti aktuale, e cila do të jenë gjetur në ARGV grupim i pikëpresje. 

Më lejoni tani iterate nga j lart deri sa të ndjekur n nga një Rritja në çdo përsëritje. Le tani të shtypur individin karaktere në ekran. Printf% c këtë herë e ndjekur nga një e re line, të japin kuotën e ngushtë, me presje, dhe tani unë duhet karakterin j-të në argumentin i-th. 

Pra, për të marrë në këtë, unë mund të thjesht specifikoni ARV parantezë i të marrë argumenti i-th. Dhe atëherë unë mund të zhyten në një nivel më të thellë dhe të bëjë një indeks të mesme të j kllapa, kllapë të ngushtë, pikëpresje, Save. Dhe tani le të përpilojnë dhe të drejtuar këtë program. 

Bëni ARGV2 - jo krejt ajo që unë prisja. Le të shkoni deri në parë nga këto mesazhet e gabimit. Dhe në të kuqe këtu, ne shohim gabim, implicite deklaruar Funksioni Biblioteka strlen me lloj - oh, prit një minutë. Kjo është hera e parë që unë e kam përdorur strlen, dhe unë nuk e parashikojnë duan atë në fillim, kështu që unë nuk e përfshijnë header fotografi që deklaron një gjatësi funksion varg. 

Pra, në krye të dosjes sime, kujtojnë, kam CS50.h. Unë kam io.h. standarde Por kjo rezulton, dhe unë e di këtë nga lexuar dokumentacionin, që kam nevojë një header fotografi të tretë në qoftë se unë, me të vërtetë, dëshironi të përdorni funksionin strlen. Ky funksion është deklaruar në string. 

Le të resave file, përpilojnë dhe të drejtuar. Dhe këtë herë, ne bëjmë jo vetëm shohin njëri prej argumenteve. Ne në vend që të shohin njëri nga argumentet një karakter në një kohë.