1 00:00:00,000 --> 00:00:00,366 2 00:00:00,366 --> 00:00:01,830 >> Speak: Vi kallar det en sträng. 3 00:00:01,830 --> 00:00:03,510 Det är bara en sekvens av tecken. 4 00:00:03,510 --> 00:00:05,790 I själva verket är det helt enkelt en matris av tecken. 5 00:00:05,790 --> 00:00:09,730 Och så även om vi får en sträng från användaren på vanligt sätt med CS50: s 6 00:00:09,730 --> 00:00:13,550 GetString, kan vi sedan gå vidare till iterera över de tecken på den strängen 7 00:00:13,550 --> 00:00:17,110 en i taget som om det sträng är verkligen en array. 8 00:00:17,110 --> 00:00:18,660 Låt oss prova det här i koden. 9 00:00:18,660 --> 00:00:21,470 >> Inkludera cs50.h. 10 00:00:21,470 --> 00:00:24,440 Inkludera stdio.h. 11 00:00:24,440 --> 00:00:27,960 Och låt oss inkluderar även string.h så att vi har tillgång 12 00:00:27,960 --> 00:00:29,500 till StringLen funktion. 13 00:00:29,500 --> 00:00:33,220 Låt oss nu förklara huvud som int main tomrum. 14 00:00:33,220 --> 00:00:36,740 Och låt oss nu gå vidare för att få en sträng från användaren. 15 00:00:36,740 --> 00:00:39,480 Printf ingång. 16 00:00:39,480 --> 00:00:45,180 Låt oss nu deklarera en sträng kalla det s, och ring vår vän GetString. 17 00:00:45,180 --> 00:00:49,570 >> Låt oss nu gå vidare för att kolla, gjorde användaren verkligen ge mig en sträng eftersom 18 00:00:49,570 --> 00:00:53,370 det visar sig per GetString egen dokumentation, GetString kunde på 19 00:00:53,370 --> 00:00:56,830 tillfälle retur NULL, en speciell sentinel värde som i huvudsak 20 00:00:56,830 --> 00:00:59,630 anger att användaren inte samarbeta och på något sätt gjorde 21 00:00:59,630 --> 00:01:01,150 inte ge en sträng. 22 00:01:01,150 --> 00:01:03,190 Så låt oss kolla på det med ett villkor. 23 00:01:03,190 --> 00:01:09,300 >> OM s inte är lika NULL, då vi kan anta att s är faktiskt en sträng, en 24 00:01:09,300 --> 00:01:14,580 samling av karaktärer, och fortsätt till iterera över dessa tecken. 25 00:01:14,580 --> 00:01:22,240 FÖR int jag får 0, låt oss också deklarera n som lika med stränglängd s så 26 00:01:22,240 --> 00:01:27,900 länge som i är mindre än n, och på varje iteration, låt oss öka i.. 27 00:01:27,900 --> 00:01:35,200 Inom denna slinga då, låt oss kalla printf i% c backslash n och koppla sedan in 28 00:01:35,200 --> 00:01:41,140 in detta värde s fäste jag därigenom skriva ut ett tecken i taget varje 29 00:01:41,140 --> 00:01:42,420 av bilarna i s.. 30 00:01:42,420 --> 00:01:45,210 >> Låt oss nu sammanställa och köra programmet. 31 00:01:45,210 --> 00:01:47,140 Gör sträng. 32 00:01:47,140 --> 00:01:52,500 . / String Min ingång kommer att bli "hej." Och där har vi det. 33 00:01:52,500 --> 00:01:55,410 H-E-L-L-O, varje röding på en egen rad. 34 00:01:55,410 --> 00:01:56,727