>> Gjuha 1: Le tani fix se programi i fundit.
Dhe këtë herë, le të caktojë në mënyrë të qartë disa kujtesës në të cilën
input përdoruesit do të ruhen.
Për ta bërë këtë, le të grihë në në atë të parë linjë e kodit ku kemi deklaruar s
më parë që të jetë një yll char.
Këtë herë, le të ri-declare kjo si vijon -
char s kllapa 16, për shembull, kllapa ngushtë.
>> Me fjalë të tjera, le të deklarojë s për të nuk ka më të gjatë të jetë një adresë e një karakter,
por më tepër një sërë 16 karaktere.
Në këtë mënyrë, përdoruesi mund të shtypni në deri në 15 karaktere dhe ende lënë hapësirë ​​për
një terminator null.
Le të vazhdojë për të shpëtuar, Hartimi, dhe Run këtë program.
Bëni scanf2 dot Slash scanf2.
Le tani shkruani një varg si përshëndetje, dhe ne jemi duke e falënderoi për përshëndetje.
>> Tani, ka ende një problem.
I shtypur vetëm në përshëndetje, e cila është vetëm pesë karaktere, plus 1 për null
terminator.
Kjo na lë me vetëm nevoja për gjashtë bytes.
>> Por për fat të keq, ne vetëm ndarë 16 në total.
Pra, nëse përdoruesi në fakt lloje në 16 karaktere, ose 17, ose disa qindra
karaktere, ne jemi ende nuk do të keni vend të mjaftueshëm në kujtesë për
input përdoruesit.
Dhe në fakt, kjo është ajo që e bën duke marrë të dhëna përdoruesi në mënyrë
e vështirë në përgjithësi.
Dhe në të vërtetë, kjo është arsyeja pse ne zbatuar funksioni string get në e parë
vend në bibliotekë CS50 -
të kuptoj se si për të trajtuar ato situata ku lloje përdorues në
më shumë karaktere shumë se ne parashikuar fillimisht.
>> Sinqerisht, pa krejtësisht rishkrimin këtë program,
nuk ka asnjë zgjidhje të pastër.
Përkundrazi, ajo që ne do të duhet të bëni është të marrë një karakter nga një përdorues në një
kohë, përsëri dhe përsëri.
Dhe në çdo pikë në qoftë se ne kemi realizuar ne jemi jashtë kujtesës, ne do të duhet të në
se pikë të kthehemi në dhe shpërndajnë të disa më shumë e kujtesës, kopje e shfrytëzuesit
input mëparshme nga copë tonë të parë e kujtesës në re,
copë më të madhe të kujtesës.
Dhe pastaj të përsëritur këtë proces përsëri dhe përsëri derisa përdoruesi është bërë sigurimin e
input tij ose të saj.