1 00:00:00,000 --> 00:00:00,610 2 00:00:00,610 --> 00:00:02,960 >> DAVID J. MALAN: Så jeg er stadig temmelig underwhelmed af dette program. 3 00:00:02,960 --> 00:00:06,980 Alt jeg har gjort er at gå fra at sige hej verden til Hello David. 4 00:00:06,980 --> 00:00:08,940 Men der er stadig ingen dynamik i dette program. 5 00:00:08,940 --> 00:00:10,530 Der er ingen bruger input. 6 00:00:10,530 --> 00:00:12,520 Der er bare hårdt kodet output. 7 00:00:12,520 --> 00:00:13,760 >> Nå, kan vi gøre det bedre end dette. 8 00:00:13,760 --> 00:00:16,750 Lad os gå tilbage i indersiden af min vigtigste funktion. 9 00:00:16,750 --> 00:00:22,740 Og denne gang, snarere end hårdt kode David som mit navn, så lad mig erstatte denne 10 00:00:22,740 --> 00:00:25,470 linje med det første, en instruktion til brugeren. 11 00:00:25,470 --> 00:00:29,090 Printf oplyse dit navn. 12 00:00:29,090 --> 00:00:32,790 Så vi har nu meddelt brugeren, hvad vi forventer af ham eller hende, at oplyse deres 13 00:00:32,790 --> 00:00:35,840 navn, men nu skal vi faktisk få brugerens navn. 14 00:00:35,840 --> 00:00:40,020 >> Nå, som før, kan jeg gemme brugerens navn, i sidste ende, i en variabel 15 00:00:40,020 --> 00:00:40,920 snor type. 16 00:00:40,920 --> 00:00:43,420 Og jeg har tænkt mig at ringe til det, som før, navn. 17 00:00:43,420 --> 00:00:47,850 Men jeg nu nødt til at tildele, som med opgave operatør, en vis værdi til 18 00:00:47,850 --> 00:00:48,760 denne variabel. 19 00:00:48,760 --> 00:00:51,990 Men denne gang, vil jeg ikke til hård kode det som jeg gjorde før, med citat, 20 00:00:51,990 --> 00:00:53,150 unquote David. 21 00:00:53,150 --> 00:00:57,260 Snarere vil jeg dynamisk få brugere input fra deres tastatur og 22 00:00:57,260 --> 00:01:00,670 derefter gemme denne værdi inde i denne variabel kaldet navn. 23 00:01:00,670 --> 00:01:04,530 >> Nå, for at gøre dette, kan jeg påberåbe sig en funktion, en funktion, der sker til 24 00:01:04,530 --> 00:01:06,640 kaldes get streng. 25 00:01:06,640 --> 00:01:12,020 Men denne funktion, ligesom streng, selv, faktisk ikke kommer med C. 26 00:01:12,020 --> 00:01:17,380 I stedet har CS50 personale erklærede i en fil kaldet CS50.h, en funktion 27 00:01:17,380 --> 00:01:21,150 kaldet Få String hvis formål i livet at tillade brugeren at indtaste sin 28 00:01:21,150 --> 00:01:24,850 eller hendes navn på tastaturet, og derefter denne funktion, få snor, returneringer 29 00:01:24,850 --> 00:01:28,540 denne værdi, så at sige, fra højre side af dette udtryk 30 00:01:28,540 --> 00:01:31,020 i venstre side dette udtryk. 31 00:01:31,020 --> 00:01:34,340 >> Lad os gemme filen og kompilere dette program. 32 00:01:34,340 --> 00:01:37,510 Make goddag-2, Enter. 33 00:01:37,510 --> 00:01:38,950 Vi er tilbage på vores blinkende prompt. 34 00:01:38,950 --> 00:01:42,340 Nu vil jeg til at gå videre og køre ./hello-2. 35 00:01:42,340 --> 00:01:46,500 Jeg faktisk bedt om at oplyse mit navn, og jeg vil gøre netop dette, D-A-V-I-D. 36 00:01:46,500 --> 00:01:50,230 Enter, og der har vi et program der, igen, udskriver Hej David. 37 00:01:50,230 --> 00:01:54,250 >> Men denne gang jeg hævder, at David er dynamisk udsendes til skærmen, 38 00:01:54,250 --> 00:01:56,430 baseret på, hvad jeg selv lige har skrevet. 39 00:01:56,430 --> 00:02:01,000 Så lad os teste denne hypotese og re-run dette program med hej-2. 40 00:02:01,000 --> 00:02:04,030 Lad os oplyse mit navn, dette tid, da Alice. 41 00:02:04,030 --> 00:02:07,590 Og ja, jeg er mødt med hej Alice eller enhver anden 42 00:02:07,590 --> 00:02:08,840 navn, for den sags skyld. 43 00:02:08,840 --> 00:02:09,760