- Luck Dragon: Asszociációs játék. :)
- btz: Internet fejlesztés országosan!
- Napkollektor - csak úgy
- bigyo108: A vén PC-Főnix újjászületése
- sziku69: Fűzzük össze a szavakat :)
- sziku69: Szólánc.
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- KRTLPC: Ki és hogyan élt túl? Volt ám fennakadás
- eBay-es kütyük kis pénzért
- bitpork: Phautós tali a Balcsinál 2025 Augusztus 2 napján (szombat)
Hirdetés
Talpon vagyunk, köszönjük a sok biztatást! Ha segíteni szeretnél, boldogan ajánljuk Előfizetéseinket!
Új hozzászólás Aktív témák
-
Benmartin
senior tag
globális meg lokális deklaráció között a foglalás helyében van nagy különbség (előbbi RAM, utóbbi verem).
igazából nem tudok magyarázatot adni, hogy miért ment globálisan deklarált változónál (bár sejtem: valószínűleg %s-nél megpróbálta beleírni a '\0' karaktert a pointer végére és az egyik allokációnál sikerült a másiknál meg nem, talán ez lehet). mindenesetre a megoldás, amit mutattam nem túl szép, pontosan amiatt, hogy igazából nem szabadna char-ba %s-el olvasni, mert string beolvasásnál +1 karakter mindig kell a végére (emiatt lehet túlcsordulás).a scanf("%c %c")-vel az a probléma, hogy amikor beolvasol bármit az inputról, akkor jön vele mindig egy '\n' karakter az enter miatt és ezt nem tudod hol eltárolni, szóval bennemarad billpufferban, a következő beolvasásnál meg szépen előveszi a puffer tartalmat és beleteszi a változódba, viszont ha kiüríted ezt a puffert, akkor rendesen fog működni a beolvasás.
a szabványos inputra (stdin) kell meghívnod az fflush függvényt, szóval a while előtt, majd minden scanf("%c %c") olvasás után hajtsd végre a következő utasítást: fflush(stdin), ezáltal eltűnnek a pufferból az input végén "varakozó" soremelés karakterek.
remélem segítettem és érthető.
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
Állásajánlatok
Cég: FOTC
Város: Budapest