1 00:00:00,000 --> 00:00:00,160 2 00:00:00,160 --> 00:00:04,010 >> SPEAKER 1: Torej, imam občutek, da se nagibajo k napišite printf Zdravo svet ali printf 3 00:00:04,010 --> 00:00:08,160 Pozdravljeni odstotkov s precej pogosto v kontekstih kadar hočem natisniti 4 00:00:08,160 --> 00:00:11,360 Niz, včasih sprašuje, Uporabnik del tega niza. 5 00:00:11,360 --> 00:00:14,980 No, ne bi bilo lepo, če smo ustvarili Naloga naše pozval, 6 00:00:14,980 --> 00:00:19,900 pravijo, ime tiskanja, katerega cilj v življenju je preprosto natisniti zdravo vejico 7 00:00:19,900 --> 00:00:24,560 tako-in-tako s sprejemanjem tako-in-tako kot argument za to funkcijo? 8 00:00:24,560 --> 00:00:29,220 Mi lahko razglasi funkcijo lastne tako kot smo lahko v nič, kot sledi. 9 00:00:29,220 --> 00:00:35,280 >> Z drugimi besedami, domnevam, rad bi printf svoje ime in pozove uporabnika 10 00:00:35,280 --> 00:00:39,470 za njegovo ali njeno ime z vrvico je enaka GetString. 11 00:00:39,470 --> 00:00:42,060 In potem hočem poklicati funkcijo imenovano ime print 12 00:00:42,060 --> 00:00:44,340 opravljanjem ov kot svoj vložek. 13 00:00:44,340 --> 00:00:47,770 >> Sedaj žalost ni funkcija imenovana ime tiskanja v C ali v 14 00:00:47,770 --> 00:00:48,950 Knjižnica CS50. 15 00:00:48,950 --> 00:00:51,220 Pa ni važno, ker smo Lahko bi bilo tudi sami. 16 00:00:51,220 --> 00:00:54,560 Naj ugotovi funkcijo lastne in nato pa ga izvajati, lahko preprosto naredijo 17 00:00:54,560 --> 00:00:59,000 nekaj prostora v tej zadevi in ​​razglasi to funkcijo, kot sledi, nični - 18 00:00:59,000 --> 00:01:01,900 ki pomeni, da funkcija ni dejansko dogaja, da nekaj vrnem, 19 00:01:01,900 --> 00:01:03,890 čeprav bo imel stranski učinek - 20 00:01:03,890 --> 00:01:08,030 natisniti ime, nato pa določajo oklepaje, da ime print pričakuje 21 00:01:08,030 --> 00:01:09,680 argument tipa niza. 22 00:01:09,680 --> 00:01:12,180 In na splošno, bomo mislijo od tega kot ime. 23 00:01:12,180 --> 00:01:15,140 >> In odprimo našo brace in si zatiskati opornik. 24 00:01:15,140 --> 00:01:21,930 In potem printf znotraj zdravo vejica odstotkov s novo ime črta vejica. 25 00:01:21,930 --> 00:01:24,570 Z drugimi besedami, čeprav to Funkcija je samo ena vrstica kode je 26 00:01:24,570 --> 00:01:27,290 ima zdaj nekaj višje Namen natisniti ravni 27 00:01:27,290 --> 00:01:28,950 ime nekoga s pozdravom. 28 00:01:28,950 --> 00:01:33,115 >> Sedaj znotraj glavnega opazili, da sem kliče ime tiskanja tako, da opravijo s. 29 00:01:33,115 --> 00:01:35,830 In tako sem se zdi zdaj, da imajo Celoten program. 30 00:01:35,830 --> 00:01:38,650 Da so iz drugih Edina razlika smo si napisal je, da ne samo, da 31 00:01:38,650 --> 00:01:42,480 ta program so glavni, ima pa tudi deklaracija in izvajanje 32 00:01:42,480 --> 00:01:44,740 Ime tisk, funkcija moje. 33 00:01:44,740 --> 00:01:49,505 >> Pojdimo zdaj zbere svoj program z znamko Funkcija nič, in ga zaženite s piko 34 00:01:49,505 --> 00:01:51,080 slash funkcijo ničelno. 35 00:01:51,080 --> 00:01:53,390 Ko je vprašal za moje ime Jaz bom tip v Davida. 36 00:01:53,390 --> 00:01:55,830 In jaz sem zares pozdravi s "Hello, David." 37 00:01:55,830 --> 00:02:00,160 >> Zdaj pa se je izkazalo, da sem zelo načrtno razglasiti ime print nad glavnim, 38 00:02:00,160 --> 00:02:03,860 s tem povedal, C vnaprej, da obstaja obstaja funkcija imenuje print 39 00:02:03,860 --> 00:02:06,930 ime, tako da sem lahko uporabite je kasneje v glavnem. 40 00:02:06,930 --> 00:02:11,610 Zdaj, ko sem namesto dal ime tiskanja na Spodnji del mojega spisa, kot je odkrito povedano 41 00:02:11,610 --> 00:02:15,310 Verjetno bi moral to storiti, da se glavne ostanke Prva stvar, ki sem ali 42 00:02:15,310 --> 00:02:18,450 drug uporabnik vidi v mojo kodo, Izkaže se, da je moja koda 43 00:02:18,450 --> 00:02:19,780 Ne gre za sestavljanje. 44 00:02:19,780 --> 00:02:23,610 >> Še posebej, če se vrnem k moji terminal okno in rok, da funkcijo 45 00:02:23,610 --> 00:02:26,120 nič zdaj opazil, da sem nadrla. 46 00:02:26,120 --> 00:02:30,340 Če sem se pomaknete gor v mojem terminala okno Bom videl to prvo napako v rdeči barvi, 47 00:02:30,340 --> 00:02:33,120 implicitno izjavo o ime funkcije tiskanja. 48 00:02:33,120 --> 00:02:34,220 >> Zdaj, kaj to pomeni? 49 00:02:34,220 --> 00:02:37,190 No, čeprav sem izvajala natisniti ime v tej datoteki, sem ne 50 00:02:37,190 --> 00:02:40,080 ga izvajali pred sem ga uporabljali v glavnem. 51 00:02:40,080 --> 00:02:43,160 Sedaj lahko gremo nazaj na staro verzija in dal ime print je 52 00:02:43,160 --> 00:02:44,450 Izvajanje up top. 53 00:02:44,450 --> 00:02:48,730 >> Ampak lahko namesto daj c A namig da je funkcija, ki prihajajo. 54 00:02:48,730 --> 00:02:55,390 Natančneje, nad glavnim bom lahko razglasi natisniti ime tako kot sem prej, vendar 55 00:02:55,390 --> 00:02:59,450 konec linije z podpičjem, s čimer obljubil, da bo izvajala, vendar še ni 56 00:02:59,450 --> 00:03:02,180 dejansko izvedbo funkcije imenovano ime print. 57 00:03:02,180 --> 00:03:05,860 Lahko pa imajo glavni na vrhu mojega datoteko, kot sem upal, in sem lahko dejansko 58 00:03:05,860 --> 00:03:07,440 izvajati ime tiskanja na dnu. 59 00:03:07,440 --> 00:03:12,860 >> Če bom zdaj vrnil na moj terminala okno in prevedem funkcijo ničelno z znamko, 60 00:03:12,860 --> 00:03:14,390 Tokrat se pripravlja. 61 00:03:14,390 --> 00:03:18,240 In če sem teči z dot funkcijo poševnica nič zagotavljanju moje ime, sem 62 00:03:18,240 --> 00:03:20,650 pozdravil kot "Zdravo, David." 63 00:03:20,650 --> 00:03:22,268