SPEAKER 1: Pojdimo zdaj popraviti da je zadnji programu. In ta čas, pa je izrecno dodelila nekatere pomnilnika, v katerem vhod uporabnikov bodo shranjeni. To storite tako, dajmo Brus v naprej, da se najprej vrstica kode, kjer smo s prijavljeno prej, da je char zvezda. Tokrat gremo ponovno prijavijo je, kot sledi - znak je nosilec 16, na primer, zaklepaj. Z drugimi besedami, kaj je razglasila, da s ne biti daljši naslov znak, ampak niz 16 znakov. Na ta način lahko uporabnik vnesti v višini do 15 znakov in še vedno puščajo prostor za null terminator. Pa nadaljujmo do Save, Compile, in Zaženi ta program. Naredite scanf2 dot slash scanf2. Pojdimo zdaj vnesite niz kot zdravo, in smo zahvalil za zdravo. Zdaj pa je še vedno problem. Sem tipkal le v zdravo, ki je le pet znakov, plus 1 za nično terminator. To nam ostane le Potreba po šestih bajtov. Ampak na žalost smo le dodeljenih 16 skupaj. Torej, če uporabnik dejansko vrste v 16. znaki, ali 17, ali nekaj sto znaki, da smo še vedno ne bo imajo dovolj prostora v pomnilniku uporabnikov vnos. In v resnici, to je tisto, kar naredi pridobivanje uporabnik vložek, tako težko na splošno. In res, to je, zakaj smo uvedli Funkcija niz spravi v prvi mesto v knjižnici CS50 - da ugotovimo, kako ravnati s tistimi, situacije, kjer uporabnik vnese v več znakov, kot smo sprva pričakovano. Odkrito povedano, ne da bi v celoti reportaža ta program, ni čisto rešitev. Namesto, kaj bi morali storiti, je dobil lik iz enemu uporabniku na Čas, znova in znova. In na vsaki točki, če se zavedamo, da smo iz spomina, bi morali na da točka iti nazaj in prerazporedi nekaj več pomnilnika, kopirati uporabnikov Predhodna vhod iz našega prvega kos spomina v novo, večji kos pomnilnika. In potem še enkrat ponoviti, da je proces in Ponovno dokler uporabnik konča z zagotavljanjem njegov ali njen vhod.