SPEAKER 1: Nézzük most fix hogy az utolsó program. És most, most kifejezetten osztja néhány, amelyben a memória felhasználó által megadott tárolásra kerül. Ehhez hadd élesíteni az első kódsort, ahol kijelentette, s korábban, hogy egy char csillag. Ezúttal nézzük újra kijelentik az alábbiak szerint - char s konzol 16, például, záró zárójel. Más szóval, hadd kijelentem s hogy nem már nem lehet a címét egy karaktert, hanem egy sor 16 karakter. Ily módon, a felhasználó beírhatja az akár 15 karakterek és még teret null terminátor. Nézzük folytassa a Mentés Compile, és futtassa ezt a programot. Legyen scanf2 dot perjel scanf2. Nézzük most írjon be egy karaktersorozatot, mint a hello, és mi megköszönte a Hello. Nos, van még egy probléma. Én csak gépelt hello, amely csak öt karakter, plusz 1 a null terminátor. Ez hagy minket csak szükség a hat bájt. De sajnos, csak kiosztott 16 összesen. Tehát, ha a felhasználó valóban típusok 16 karaktereket, vagy a 17, vagy a több száz karakter, még mindig nem fog Van elég hely a memóriában a felhasználó bemenet. És valóban, ez az, ami egyre felhasználói így általában nehéz. És valóban, ez az, amiért végre A GET sztring függvény az első helye a CS50 könyvtárban - hogy kitaláljuk, hogyan kell kezelni azokat a helyzetekben, amikor a felhasználó típusok több karakter, mint mi azt eredetileg várták. Őszintén szólva, nem teljesen újraírása a program, nincs tiszta megoldás. Inkább, amit kellett volna tennie, hogy egy karaktert a felhasználó egy olyan idő, újra és újra. És minden ponton, ha rájövünk, mi vagyunk a memória, mi lett volna a Ezen a ponton vissza és újraelosztása még több memóriát, másolja a felhasználó előző bemenet az első darab memória az új, nagyobb darab memóriát. Majd ismételje meg a folyamatot újra és ismét, amíg a felhasználó történik nyújtó ő bemenet.