>> Spreker 1: Alle reg.
Dat dit die laaste program was 'n bietjie vervelig.
Kom ons gaan voort en verpersoonlik dit 'n bietjie.
Eerder as om hallo wêreld om te sê, Hoekom het ons nie gaan voort
en sê hallo Dawid?
Wel, om dit te doen, kan ek nader dit in 'n paar van die maniere.
Ek kan natuurlik nie, net hard-kode David, maar dit is nie al wat
fundamenteel verskillende uit die laaste weergawe.
So kom ons neem 'n sprong vorentoe, ongedaan te maak wat verander, en in plaas daarvan sit 'n nuwe
reël van die kode waar lyn vyf keer was.
>> Spesifiek, wat ek gaan om hier te doen is voeg string naam, en daardeur
waarby 'n veranderlike.
Let daarop dat in C, nie net het jy 'n veranderlike te gee 'n naam, wat in
hierdie geval is die naam, jy het ook ' spesifiseer watter tipe dit is.
Ons sal ander vorme sien voor lank onder hulle heelgetalle en swaai punt
waardes en meer, maar vir nou, string is net 'n woord of 'n frase, meer
formeel, 'n reeks van nul of meer karakters.
So op die oomblik, hierdie lyn is vyf gesê: Gee my 'n veranderlike genaamd naam
wie se data tipe is string.
>> Nou, ek wil 'n waarde daar op te slaan, en om dit te doen in C, gebruik ons ​​die gelyke
teken, andersins bekend as die opdrag operateur.
So ek gaan as volg te werk gaan.
Gelyk aan quote, unquote, D-'n-V-ek-D, geslote kwotasie, kommapunt.
Die netto-effek in lyn vyf is nou te verklaar 'n string, D-'n-V-ek-D, stoor
dit van die regterkant van hierdie uitdrukking in die veranderlike op die
linkerkant van hierdie uitdrukking.
So teen die einde van hierdie lyn, ons het D-'n-V-ek-D gestoor binnekant van 'n veranderlike
genoem naam.
>> Nou kom ons gebruik om hierdie veranderlike.
On line ses, ek gaan om te vervang wêreld met 'n plekhouer.
% S word gedefinieer volgens die dokumentasie vir printf as 'n
plekhouer vir 'n string.
Met ander woorde, dit is 'n manier van inligting printf dat ek gaan sit
'n ander waarde hier nie, maar laat my vertel in 'n oomblik wat
dit gaan wees.
Nou, hoe kan ek voortgaan printf te vertel wat daardie waarde gaan wees?
>> Wel, ek moet printf te voorsien met 'n tweede argument, en om dit te doen, het ek
'n komma te sit na die eerste sodanige argument, wat hierdie aangehaal
string, en dan het ek nodig om te spesifiseer wat waarde wat ek wil aan te sluit in dat
eerste argument se plekhouer.
So het die naam van my veranderlike is, van Natuurlik, naam, so is dit voldoende om te tik
"Naam" as die tweede argument te printf.
Nou nie mislei word nie.
Selfs al is daar 'n komma binnekant van die aangehaal string, dit is inderdaad
binnekant van die string sodat dit nie skei een argument van die ander.
Slegs hierdie komma wat buite daardie aangehaal string eintlik skei
printf se eerste argument van sy tweede argument.
>> Kom ons nou hierdie program saam te stel.
Maak hallo een.
Ag, my goedheid, vyf foute gegenereer, en my program se
slegs sewe lyne lank.
Wel, soos altyd, kyk nie na die laaste van die foute op die skerm.
Kyk na die heel eerste omdat dalk daar is 'n waterval effek waardeur
net een fout op die top geskep om die voorkoms van meer foute as wat daar
eintlik is.
>> So laat my blaai up, en die eerste sodanige boldfaced fout hier is die gebruik van
swart identifikasie string.
Het jy bedoel standaard in?
Wel nee, ek het nie.
Ek het beteken string, maar dit blyk ek vergeet dat string nie as 'n bestaan
data tik tegnies in C. Konseptueel dit bestaan, maar die woord
"String" bestaan ​​net omdat die CS50 personeel te kenne gegee nie, so te sê,
in 'n lêer wat ons vir onsself geskryf het.
In werklikheid, net soos iemand wat lank gelede verklaar die printf funksie in 'n lêer
genoem Standard IO.H het, so het ons die personeel verklaar string as 'n data tipe in
'n lêer wat, geen verrassing nie, is CS50.H. genoem
>> So laat ons gaan terug na die top van my program en stel die samesteller dat
nie net wil ek die simbool te gebruik string, ek wil ook op te voed die
samesteller van wat daardie simbool beteken.
En om dit te eenvoudig te doen, kan ek gaan terug een te reël, voeg 'n nuwe lyn
hier, en voeg, "sluit CS50.H," ook tussen skuins hakies.
Hierdie instruksie, baie soos wat nou on line twee, gaan in te lig van die
samesteller dat dit sluit in die inhoud van CS50.H waar hulle is
in my hardeskyf binnekant van my program, sodoende die opvoeding van die samesteller te
wat bedoel word met tou.
>> Kom ons heropstel my program nadat die wysigings.
Maak hallo een.
Betree.
Veel beter nie.
Nou het ek 'n flikkerende vinnige waar ek kan tik, ". / hallo een," en voila.
Hallo Dawid.