Выступоўца 1: Так што я адчуваю, што я, як правіла, напісаць Е прывітанне свет ці Е прывітанне адсоткаў з даволі часта ў кантэкстах , Дзе я хачу, каб раздрукаваць радок, часам пытаючыся Карыстальнік частка гэтага радка. Ну, не было б нядрэнна, калі б мы стварылі функцыя наша ўласнае называецца, сказаць, імя друку, мэта якога ў жыцці проста надрукаваць прывітанне коску так і то-то, прыняўшы так і то-то ў якасці аргументу гэтай функцыі? Мы можам аб'явіць функцыю самастойна гэтак жа, як мы можам у пустым наступным чынам. Іншымі словамі, выкажам здагадку, я хацеў бы Е сваё імя і затым папытаеце карыстальніка для яго ці яе імя з радку з роўна GetString. А потым я хачу выклікаць функцыю называецца імя друку праходжання S ў якасці ўваходных дадзеных. Зараз, на жаль, няма функцыі называецца імя друк у З або ў CS50 бібліятэка. Але незалежна ад таго, таму што мы можа зрабіць гэта самі. Каб абвясціць функцыю самастойна і затым рэалізаваць яго, мы можам проста зрабіць некаторыя магчымасці ў гэтым файле і аб'явіць гэтая функцыя наступным чынам, несапраўднымі - які азначае, што функцыя не на самай справе адбываецца нешта вярнуць, нават калі ён будзе мець пабочны эфект - друкаваць імя, а затым давайце ўдакладнім ў дужках, што імя друк чакае аргумент тыпу радка. І наогул, мы будзем думаць з што ў якасці імя. І давайце адкрыем наш дужкі і зачыніць нашу дужкі. А потым Е ўнутры прывітанне коска Новая назва лініі коска працэнтаў з. Іншымі словамі, нават калі гэта Функцыя толькі адзін радок кода, гэта робіць зараз ёсць нейкая вышэйшая Мэта ўзровень для друку чыёсьці імя з прывітаннем. Зараз усярэдзіне асноўны, звярніце ўвагу, што я называючы імя друку, перадаючы с. І таму я, здаецца, зараз ёсць поўная праграма. Адзіная розніца ў тым, ад іншых мы напісалі, што не толькі робіць гэтая праграма ўжо галоўны, ён таксама мае Дэкларацыя і рэалізацыя Назва друку, функцыя самастойна. Давайце зараз скампіляваць сваю праграму з указаннем маркі нулявая функцыя, і запусціць яго з пункту слэш нулявую функцыю. У адказ на запыт на маё імя Я увядзіце Давіда. І я сапраўды вітаецца з "Прывітанне, Дэвід." Цяпер аказваецца, што я цалкам свядома заявіў імя па бацьку вышэй асноўнай, тым самым распавядаючы C загадзя, што такая функцыя называецца друку назваць так, каб я мог выкарыстаць пазней у асноўны. Цяпер, калі б я замест змясціць імя друк на дно маім файле, гэтак жа шчыра, я верагодна, варта зрабіць так, каб асноўныя рэшткі Першае, што я ці іншы карыстальнік бачыць у сваім кодзе, атрымліваецца, што мой код ня збіраецеся кампіляваць. У прыватнасці, калі я вярнуся да майго акно тэрмінала і запусціць зрабіць функцыю нуля зараз, звярніце ўвагу, што я крычаў на. Калі я пракруткі ўверх у маім акне тэрмінала, Я буду бачыць гэтую першую памылку ў чырвоны, няяўная дэкларацыя функцыю друку. Цяпер, што ж гэта значыць? Ну, хоць я рэалізаваў надрукаваць імя ў гэтым файле, у мяне не рэалізавалі яго, перш чым я маю выкарыстаў яго ў асноўны. Зараз, мы маглі б вярнуцца да старога версія і паставіць імя прынт- Рэалізацыя наверсе. Але я магу замест гэтага проста даюць C намёк што ёсць функцыя прыехаць. У прыватнасці, вышэй асноўнай магу заявіць надрукаваць імя гэтак жа, як я зрабіў раней, але завяршыць лінію з коскі, тым самым абяцаючы рэалізаваць, але яшчэ не на самай справе рэалізацыі функцыі называецца імя друк. То ў мяне можа быць асноўным у верхняй частцы майго файл, як я спадзяваўся, і я магу на самой справе рэалізаваць імя друк ўнізе. Калі б я цяпер вяртаюся да свайго акне тэрмінала і перасабраць нулявую функцыю з указаннем маркі, на гэты раз ён збірае. І калі я запускаю яго з кропкавай функцыі слэш нуля прадастаўлення маё імя, я віталі як "Прывітанне, Дэвід."