1 00:00:00,000 --> 00:00:00,560 2 00:00:00,560 --> 00:00:02,460 >> David J. MALAN: Nézzük a dolgokat egy lépéssel tovább, most. 3 00:00:02,460 --> 00:00:05,450 Tegyük fel, hogy én nem csak azt nyomtatni minden az én program 4 00:00:05,450 --> 00:00:06,630 parancssori paramétereket. 5 00:00:06,630 --> 00:00:10,490 De ahelyett, szeretné nyomtatni az összes egyes karakterek az egyes 6 00:00:10,490 --> 00:00:14,060 a parancssori paramétereket, egyet sor, úgy, hogy ha fut ez a 7 00:00:14,060 --> 00:00:17,490 programot, egyszerűen látni a patak karakterek a képernyőn 8 00:00:17,490 --> 00:00:20,700 együttesen vannak az én sorrendben A parancssori paramétereket. 9 00:00:20,700 --> 00:00:21,980 >> Nos, hogyan tudom ezt megtenni? 10 00:00:21,980 --> 00:00:26,540 Tudom tartani ép a hurok előtt amelynek én iteratív I-ig 11 00:00:26,540 --> 00:00:30,060 ARGC annak érdekében, hogy integrálja az parancssori paramétereket magukat. 12 00:00:30,060 --> 00:00:34,460 De most, minden egyes iterációs hogy loop, meg kell teremteni a végighaladni az egyes 13 00:00:34,460 --> 00:00:38,550 a karakterek vagy a karakter egy adott karakterlánc. 14 00:00:38,550 --> 00:00:40,620 Tehát erre, szükségem van még egy kör. 15 00:00:40,620 --> 00:00:42,090 >> Tegyük hozzá, hogy a. 16 00:00:42,090 --> 00:00:46,890 Internethez, nevezzük j, egyenlő 0-ra. 17 00:00:46,890 --> 00:00:49,980 Most megyek, hogy integrálni kell egészen a hossza a 18 00:00:49,980 --> 00:00:52,310 jelenlegi string ARGV. 19 00:00:52,310 --> 00:00:55,910 Hadd hozzak magamnak egy másik helyi változó, hívjuk azt n, és állítsa be 20 00:00:55,910 --> 00:01:00,120 hogy az egyenlő a húr hossza jelenlegi érv, ami lesz 21 00:01:00,120 --> 00:01:04,230 talált ARGV konzol i pontosvessző. 22 00:01:04,230 --> 00:01:08,500 >> Engedjék meg, hogy halad-hatunk a j-ig n-ig, majd egy 23 00:01:08,500 --> 00:01:10,400 növekmény minden iterációban. 24 00:01:10,400 --> 00:01:13,850 Nézzük most nyomtassa ki az egyes karakterek a képernyőn. 25 00:01:13,850 --> 00:01:21,920 Printf% c ez alkalommal, majd egy új vonal, közel idézet, vessző, és most 26 00:01:21,920 --> 00:01:25,565 szükségünk van a j-edik karakter Az i-edik érv. 27 00:01:25,565 --> 00:01:30,240 >> Tehát, hogy az, hogy én is csak adja ARV konzol i 28 00:01:30,240 --> 00:01:32,050 hogy az i-edik érv. 29 00:01:32,050 --> 00:01:36,140 És akkor tudok merülni egy szinttel lejjebb és nem a másodlagos indexe 30 00:01:36,140 --> 00:01:40,420 konzol j, közel zárójel, pontosvessző, a Mentés gombra. 31 00:01:40,420 --> 00:01:43,610 És nézzük most összeállítja és a program futtatásához. 32 00:01:43,610 --> 00:01:46,630 >> Legyen ARGV2 - 33 00:01:46,630 --> 00:01:48,440 nem egészen erre számítottam. 34 00:01:48,440 --> 00:01:50,740 Nézzük felfelé az első ilyen hiba üzenet. 35 00:01:50,740 --> 00:01:54,540 És a piros itt látjuk hiba burkoltan kijelentette könyvtári funkció 36 00:01:54,540 --> 00:01:56,290 strlen típusú - 37 00:01:56,290 --> 00:01:57,380 oh, várj egy percet. 38 00:01:57,380 --> 00:02:00,340 Ez az első alkalom, hogy használt strlen, és nem számítottak 39 00:02:00,340 --> 00:02:04,970 akarta azt először, így nem tartalmazza a header fájlt kijelenti, 40 00:02:04,970 --> 00:02:06,290 string length függvény. 41 00:02:06,290 --> 00:02:09,419 >> Tehát a tetején a fájl, visszahívás, én CS50.h. 42 00:02:09,419 --> 00:02:11,080 Én szabványos io.h. 43 00:02:11,080 --> 00:02:14,500 De kiderült, és tudom, hogy ez a Olvasd el a dokumentációt, hogy szükségem 44 00:02:14,500 --> 00:02:18,320 harmadik header fájlt, ha én valóban, szeretné használni az strlen függvényt. 45 00:02:18,320 --> 00:02:22,760 Ez a funkció bejelentett string.h. 46 00:02:22,760 --> 00:02:25,230 >> Nézzük mentse a fájlt, össze, és fuss. 47 00:02:25,230 --> 00:02:32,360 48 00:02:32,360 --> 00:02:35,570 És ezúttal már nem csak lásd az egyes érveket. 49 00:02:35,570 --> 00:02:40,470 Mi ehelyett lásd az egyes érvek egy karakter egy időben. 50 00:02:40,470 --> 00:02:43,165