David J. MALAN: Hayaan ang kumuha ng mga bagay isa pa na hakbang, na ngayon. Ipagpalagay na hindi ko lang gusto upang i-print ang lahat ng program na iyon ang aking utos argumento linya. Ngunit ako, sa halip, gusto upang i-print ang lahat ng mga indibidwal na mga character sa bawat isa sa ang aking mga argumento command line, isa sa bawat linya, kaya na sa pagtakbo ito programa, nakikita ko lamang ng isang stream ng mga character sa screen na kapag pinagsama-sama ay mula sa aking pagkakasunud-sunod ng mga argumento command line. Well, paano ko ito gagawin? Maaari ko bang panatilihin buo ang aking loop mula sa bago kung saan ang umuulit ko mula sa i up hanggang ARGC upang pagsamahin sa ibabaw ng mga argumento command line ang kanilang mga sarili. Ngunit ngayon, sa loob ng bawat pag-ulit ng na loop, kailangan kong ngayon umulit sa ibabaw ng bawat ng mga character o char sa isang tiyak na string. Kaya upang gawin iyon, kailangan ko ng isa pang loop. Ni idagdag na Hayaan. para int, sabihin tawagan ni ito j, ay katumbas ng 0. Ngayon pupuntahan ko kailangan upang isama ang up hanggang sa ang haba ng kasalukuyang string sa ARGV. Kaya hayaan mo akong bigyan ang aking sarili ng isa pang lokal na variable, ipapakita namin ito tumawag n, at itakda ang na katumbas ng haba ng string ng kasalukuyang argumento, na kung saan ay magiging natagpuan sa ARGV bracket semicolon i. Hayaan akong ngayon umulit mula sa j up hanggang n sundan ng isang dinagdagan sa bawat pag-ulit. Hayaan ngayong mag-print ng mga indibidwal na mga character sa screen. Printf% c oras na ito sinusundan ng isang bagong linya, malapit quote, kuwit, at ngayon ko kailangan ang j-ika ng character sa i-ika-argumento. Kaya upang makakuha ng sa na, maaari ko lamang tukuyin ARV bracket i upang makuha ang mga i-ika-argumento. At pagkatapos ay maaari kong sumisid sa isang antas ng mas malalim at gawin ang isang pangalawang index ng bracket j, malapit panaklong, tuldok-kuwit, I-save. At ngayon ni compile ipaalam at patakbuhin ang program na ito. Gawing ARGV2 - hindi pa kung ano ang inaasahan ko. Ni-scroll pataas sa unang Hayaan ng mga mensahe ng error. At sa pulang dito, makikita natin na error, nang kataon lamang deklarasyon ng function library strlen may uri - oh, maghintay ng isang minuto. Ito ang unang pagkakataon na nagamit ko strlen, at ako ay hindi inaasahan kinakapos ito sa una, kaya hindi ko isama ang header ng file na declares isang string length na function. Kaya sa tuktok ng aking mga file, pagpapabalik, mayroon akong CS50.h. Mayroon akong standard io.h. Ngunit ito ay lumiliko out, at alam ko ito mula sa pagbasa ng dokumentasyon, na kailangan ko isang third header ng file kung ako, sa katunayan, nais na gamitin ang strlen function. Function na ay ipinahayag sa string.h. Ni resave ang file Hayaan, sumulat ng libro, at tumakbo. At oras na ito, ginagawa namin hindi lamang tingnan ang bawat isa sa mga argumento. Sa halip namin makita ang bawat isa sa mga argumento isang character sa isang pagkakataon.