Tagapagsalita 1: Ang lahat ng karapatan. Iyon huling programa ay isang maliit na mayamot. Sabihin sige at i-personalize ito nang kaunti. Sa halip na i-kamustahin mundo, bakit hindi kami sige at sinasabi, kumusta David? Well, upang gawin ito, maaari ko bang lapitan ito sa ilang mga paraan. Magagawa ko, siyempre, lamang na hard code David, ngunit iyan ay hindi lahat na sa panimula iba't ibang mula sa nakaraang bersyon. Kaya ipaalam sa tumagal ng isang tumalon pasulong, i-undo na baguhin, at sa halip ay ipasok ang isang bagong linya ng code kung saan limang linya nang isang beses ay. Sa partikular, kung ano ako pagpunta sa gawin dito ay magdagdag sa string pangalan, at sa gayon deklarasyon ng variable. Pansinin na sa C, hindi lamang ang mayroon kang upang bigyan ang isang variable ng isang pangalan, na sa kasong ito ay pangalan, mayroon ka ring upang tukuyin kung anong uri ito ay. Susubukan naming makita ang iba pang mga uri ng bago mahaba, bukod sa sila integer at lumulutang point mga halaga at higit pa, ngunit sa ngayon, string ay lamang ng isang salita o parirala, higit pa pormal, isang pagkakasunod-sunod ng zero o higit pang mga character. Kaya sa sandaling ito, ang linya ng limang ay na nagsasabi, ninyo ako ng variable na tinatawag na pangalan na kung saan ang uri ng data ay string. Ngayon, gusto kong mag-imbak ng isang halaga sa doon, at upang gawin iyon sa C, ginagamit namin ang katumbas mag-sign, kung hindi, na kilala bilang ang pagtatalaga operator. Kaya Pupunta ako sa magpatuloy bilang mga sumusunod. Kapantay quote, magpanipi, D-A-V-ko-D, closed quote, tuldok-kuwit. Ang net epekto sa limang linya ngayon ay upang magpahayag ng isang string, D-A-V-ko-D, pag-iimbak ito mula sa kanang bahagi ng ito na expression sa mga variable sa kaliwang bahagi ng ito expression. Kaya sa katapusan ng linyang ito, mayroon kaming D-A-V-ko-D na naka-imbak sa loob ng isang variable tinatawag na pangalan. Ngayon gumamit ng ito variable ipaalam. Sa anim na linya, ako pagpunta sa palitan mundo na may isang placeholder. % S ay tinukoy ayon sa mga dokumentasyon para sa printf bilang isang placeholder para sa isang string. Sa ibang salita, ito ay isang paraan ng pagpapabatid printf na pupuntahan ko ilalagay ilang ibang mga halaga dito, ngunit hayaan mo akong sabihin sa iyo sa isang sandali lamang kung ano ito ay pagpunta sa maging. Ngayon, paano ko magpatuloy kong sabihin printf kung ano ang halagang iyon ay magiging? Well, kailangan ko na magbigay ng printf sa isang pangalawang argumento, at upang gawin iyon, ako kailangan bang maglagay ng comma pagkatapos ng unang tulad argumento, na kung saan ay naka-quote na ito string, at pagkatapos ay kailangan ko upang tukuyin kung ano halaga na gusto kong mag-plug in na placeholder unang argumento ni. Kaya ang pangalan ng aking variable ay, ng Siyempre, pangalan, kaya suffices i-type ang "Pangalan" bilang ang pangalawang argumento sa printf. Ngayon ay hindi ma-misled. Kahit na mayroong isang kuwit sa loob ng ang naka-quote na string, iyon ay sa katunayan sa loob ng string kaya hindi paghiwalayin ang isang argument mula sa isa pang. Comma na nasa labas ng na lamang ito naka-quote na string aktwal na naghihiwalay unang argumento printf mula sa nito pangalawang argumento. Ngayon compile ng program na ito Hayaan. Gawing kumusta isa. Oh aking kabutihan, limang mga error na nabuo, at ang aking program pito lamang linya ang haba. Well, gaya ng lagi, huwag tingnan ang huling ng mga error sa iyong screen. Tumingin sa pinakaunang dahil di kaya mayroong isang cascading epekto kung saan tuktok na nilikha lamang ng isa error up ang hitsura ng higit pang mga error kaysa doon talaga ay. Kaya hayaan mo akong mag-scroll pataas, at ang unang tulad boldfaced error dito ay ang paggamit ng hindi nagbigay-alam identifier string. Ibig mo bang sabihin standard in? Well hindi, ginawa ko hindi. Ginawa ko ibig sabihin ng string, ngunit ito ay lumiliko out ako Nakalimutan na string ay hindi umiiral bilang isang type technically data sa C. Conceptually umiiral na ito, ngunit ang mga salita "String" ay umiiral lamang dahil ang CS50 kawani na ipinahayag ito, kaya na magsalita, sa isang file na na sinulat namin ang ating mga sarili. Sa katunayan, tulad ng isang tao matagal na ang nakalipas ipinahayag ang printf function na sa isang file na tinatawag na Standard IO.H, kaya ginawa namin ang Ipinahahayag string kawani bilang isang uri ng data sa na ang isang file, walang sorpresa, ay tinatawag na CS50.H. Kaya sabihin bumalik sa tuktok ng aking programa at ipagbigay-alam ang tagatala na Hindi lamang ang gusto kong gamitin ang simbolong string, gusto ko rin upang turuan ang tagatala sa ano ang ibig sabihin ng simbolo na. At upang gawin iyon medyo simple, maaari ba akong pumunta back up sa line isa, magpasok ng isang bagong linya dito, at magdagdag ng, "Kabilang sa CS50.H," sa pagitan ng angled bracket din. Pagtuturo na ito, na halos tulad na ngayon sa dalawang linya, ay pagpunta upang ipaalam ang tagatala na dapat itong isama ang mga nilalaman ng CS50.H nasaan man sila sa aking hard drive sa loob ng aking mga programa, at sa gayon ay educating ang tagatala bilang sa kung ano ay sinadya sa pamamagitan ng string. Mag-recompile ng aking programa Hayaan pagkatapos i-save ang mga pagbabago. Gawing kumusta isa. Ipasok. Karamihan mas mahusay. Ngayon ba akong magkaroon ng isang nagbi-blink na prompt kung saan ako Maaari type, ". / kumusta isa," at voila. Kamusta David.