>> SPEAKER 1: Ejja issa jiffissaw dak il-programm li għadda.
U din id-darba, ejja talloka b'mod espliċitu xi memorja li fiha l-
input utent se jiġu maħżuna.
Biex tagħmel dan, ejja Hone fl fuq l-ewwel linja tal-kodiċi fejn aħna iddikjarata s
qabel li tkun stilla char.
Din id-darba, ejja 'jiddikjara mill-ġdid huwa kif ġej -
bracket 16 char i, per eżempju, parentesi magħluqa.
>> Fi kliem ieħor, ejja tiddikjara s li xejn itwal għandu jkun indirizz ta 'karattru,
iżda pjuttost firxa ta '16 karattri.
Dan il-mod, l-utent tista 'tip sa 15 karattri u xorta jħallu lok għal
a terminatur null.
Ejja tipproċedi biex Save, jikkumpilaw, u Mexxi dan il-programm.
Kun scanf2 scanf2 dot slash.
Ejja issa tip string simili hello, u aħna qed irringrazzja għall-bonjour.
>> Issa, hemm għadu problema.
I biss ittajpjat fil hello, li huwa biss ħames karattri, flimkien 1 għall-null
terminatur.
Hija Jifdal biss ħtieġa għal sitt bytes.
>> Iżda sfortunatament, aħna biss allokat 16 b'kollox.
Mela jekk l-utent fil-fatt tipi fil-16 karattri, jew 17, jew diversi mijiet
karattri, aħna qed għadhom mhux se jkollhom biżżejjed spazju fil-memorja għall-
input utent.
U fil-fatt, dan huwa dak li jagħmel jkollna input utent hekk
diffiċli b'mod ġenerali.
U fil-fatt, dan huwa għaliex aħna implimentati il-funzjoni string get fl-ewwel
post fil-librerija CS50 -
figura kif jimmaniġġjaw dawk sitwazzjonijiet fejn it-tipi utent fil
karattri aktar minn we antiċipat fil-bidu.
>> Franchement, mingħajr kompletament kitba mill-ġdid dan il-programm,
hemm l-ebda soluzzjoni nadif.
Pjuttost, dak li nixtiequ għandek tagħmel hu li tikseb karattru mill-utent wieħed kull
time, u għal darb'oħra.
U f'kull punt jekk aħna realizzata aħna qed tal-memorja, rridu naraw li fil-
dak il-punt jmorru lura u jerġgħu jallokaw xi memorja aktar, kopja tal-l-utent
input preċedenti mill-ewwel chunk tagħna tal-memorja fil-ġdida,
blokki akbar ta 'memorja.
U mbagħad irrepeti l-proċess mill-ġdid u mill-ġdid sakemm l-utent isir provvediment
input tiegħu jew tagħha.