1 00:00:00,000 --> 00:00:00,160 2 00:00:00,160 --> 00:00:04,010 >> ПРЕДСЕДНИК 1: Па ја се осећам као да имају тенденцију да написати принтф здраво свет или принтф 3 00:00:04,010 --> 00:00:08,160 здраво одсто а често у контексту где ја желим да одштампате 4 00:00:08,160 --> 00:00:11,360 ниска, понекад пита корисник део тог низа. 5 00:00:11,360 --> 00:00:14,980 Па, зар не би било лепо ако бисмо створили функција наше зове, 6 00:00:14,980 --> 00:00:19,900 кажу, име принт, чија сврха у животу је једноставно за штампање здраво зарез 7 00:00:19,900 --> 00:00:24,560 тако-и-тако прихватајући тако-и-тако као аргумент за ту функцију? 8 00:00:24,560 --> 00:00:29,220 Можемо прогласи функцију наше баш као што можемо у нуле и то. 9 00:00:29,220 --> 00:00:35,280 >> Другим речима, претпостављам да бих принтф своје име, а затим пита корисника 10 00:00:35,280 --> 00:00:39,470 за његово име са стринг а једнако ГетСтринг. 11 00:00:39,470 --> 00:00:42,060 И онда ја желим да позовем функцију зове име штампање 12 00:00:42,060 --> 00:00:44,340 Полагањем с као свој улаз. 13 00:00:44,340 --> 00:00:47,770 >> Сада, нажалост, не постоји функција зове име штампа у Ц или у 14 00:00:47,770 --> 00:00:48,950 ЦС50 библиотека. 15 00:00:48,950 --> 00:00:51,220 Али без обзира на то, јер смо може то учинити сами. 16 00:00:51,220 --> 00:00:54,560 Да прогласи функцију наше и онда га спроведе, можемо једноставно направити 17 00:00:54,560 --> 00:00:59,000 неки соба у овом фајлу и прогласи ова функција као што следи, празнина - 18 00:00:59,000 --> 00:01:01,900 означава да функција није заправо ће нешто да се врате, 19 00:01:01,900 --> 00:01:03,890 иако ће имати споредни ефекат - 20 00:01:03,890 --> 00:01:08,030 принт име, а онда хајде да наведете у заграде да име штампа очекује 21 00:01:08,030 --> 00:01:09,680 аргумент типа стринг. 22 00:01:09,680 --> 00:01:12,180 И уопште, ми ћемо мислити то као име. 23 00:01:12,180 --> 00:01:15,140 >> И хајде да отворимо наше браће и затворити наше браће. 24 00:01:15,140 --> 00:01:21,930 А онда иф унутра здраво зарез посто с нова линија запета име. 25 00:01:21,930 --> 00:01:24,570 Другим речима, иако је ово Функција је само једна линија кода, он 26 00:01:24,570 --> 00:01:27,290 нема сада имају неки виши сврха за штампање ниво 27 00:01:27,290 --> 00:01:28,950 нечије име са поздравом. 28 00:01:28,950 --> 00:01:33,115 >> Сада унутар главни, приметити да сам дозива штампе проласком с. 29 00:01:33,115 --> 00:01:35,830 И тако ја сада изгледа да има комплетан програм. 30 00:01:35,830 --> 00:01:38,650 Једина разлика је од других смо написали да не само да 31 00:01:38,650 --> 00:01:42,480 овај програм је главни, он такође има декларација и имплементација 32 00:01:42,480 --> 00:01:44,740 Име штампа, функција моје. 33 00:01:44,740 --> 00:01:49,505 >> Хајде да сада саставити свој програм са марка функција нула, и покрените га са тачком 34 00:01:49,505 --> 00:01:51,080 сласх функцију нула. 35 00:01:51,080 --> 00:01:53,390 Када будете упитани за име моје Ја ћу укуцајте у Давида. 36 00:01:53,390 --> 00:01:55,830 И ја заиста сам поздравио са "Здраво, Дејвид." 37 00:01:55,830 --> 00:02:00,160 >> Сада, испада да врло намерно прогласила име штампа изнад главни, 38 00:02:00,160 --> 00:02:03,860 тиме говори Ц унапред да постоји постоји функција зове штампање 39 00:02:03,860 --> 00:02:06,930 име, тако да сам могао да користим она касније у главни. 40 00:02:06,930 --> 00:02:11,610 Сада, уместо да сам ставио име за штампање на дно мом досијеу, као искрено ја 41 00:02:11,610 --> 00:02:15,310 Вероватно би требало да учини да је главни остатке Прва ствар коју сам или 42 00:02:15,310 --> 00:02:18,450 други корисник види у мом коду, испоставило се да је мој број је 43 00:02:18,450 --> 00:02:19,780 неће саставити. 44 00:02:19,780 --> 00:02:23,610 >> Конкретно, ако се вратим у мој идем прозор терминала и покренути чине функцију 45 00:02:23,610 --> 00:02:26,120 нула сада, приметио да сам викао на. 46 00:02:26,120 --> 00:02:30,340 Ако сам дођите у мом прозору терминала, Ја ћу видети ову прву грешку у црвено, 47 00:02:30,340 --> 00:02:33,120 имплицитна декларација Функција име штампа. 48 00:02:33,120 --> 00:02:34,220 >> Сада, шта то значи? 49 00:02:34,220 --> 00:02:37,190 Па, иако сам спроводи принт име у овом фајлу, ја сам не 50 00:02:37,190 --> 00:02:40,080 реализован је пре имам користе га у главни. 51 00:02:40,080 --> 00:02:43,160 Сада, можемо да се вратимо на старо верзија и стави име штампа је 52 00:02:43,160 --> 00:02:44,450 имплементација се врх. 53 00:02:44,450 --> 00:02:48,730 >> Али уместо тога могу само дати савет Ц а да постоји функција да дође. 54 00:02:48,730 --> 00:02:55,390 Конкретно, изнад главна могу прогласити принт име баш као што сам урадио раније, али 55 00:02:55,390 --> 00:02:59,450 прекинете линију са зарезом, тиме обећавајући да спроведе, али не увек 56 00:02:59,450 --> 00:03:02,180 који спроводи функције зове име штампа. 57 00:03:02,180 --> 00:03:05,860 Ја онда могу имати главни на врху моје филе као што сам се надао, а ја заправо могу 58 00:03:05,860 --> 00:03:07,440 имплементирају име штампање на дну. 59 00:03:07,440 --> 00:03:12,860 >> Ако ја сада вратити на мој прозор терминала и компајлирате функцију нула са марка, 60 00:03:12,860 --> 00:03:14,390 овај пут то саставља. 61 00:03:14,390 --> 00:03:18,240 И ако сам га покренути са функцијом дот сласх нула пружање моје име, ја сам 62 00:03:18,240 --> 00:03:20,650 поздравио као "Здраво, Дејвид." 63 00:03:20,650 --> 00:03:22,268