- Jolla és SailfishOS tapasztalatcsere
- 10 hasznos trükk Xiaomi / Redmi / Poco telefonokhoz
- Honor Magic8 Pro - bevált recept kölcsönvett hozzávalókkal
- Újabb részletek a Galxy S26 Ultra privát képernyőmódjára vonatkozóan
- Kiszivárgott a Pixel 10a specifikációja
- iPhone topik
- One mobilszolgáltatások
- Huawei Pura 80 Pro – a másik zsebbe
- Samsung Galaxy Z Fold7 - ezt vártuk, de…
- Nemzetközi vizekre evezett a Realme GT 7 és GT 7T
Új hozzászólás Aktív témák
-
Korcsii
őstag
válasz
Pcmagicnet
#2379
üzenetére
a \0 egy speciális karakter (NULL karakternek is hívják), szerepe, hogy jelezze a string végét (miért jó, azt csak akkor érted meg igazán, amikor nem engedik meg a string.h használatát
)szóval egy char tömbben (stringben) csak egyszer szerepelhet, bár tárolhatsz mögötte bármit, meg is jegyzi, de nem fogja kiírni, mert a kiírás is \0-ig történik...
strcat-tal lehet őket összefűzni, vagy ha egy mondatot akarsz egyben beleolvasni, akkor a szóközt is beleveszed, etc...
scanf("[^\n]",string);
pl én ezt szerettem anno, mindent beolvas addig, amíg sortörést nem talál... DE ez csak akkor alkalmazható, ha el is fér a string tömbben, azaz ha a feladat leírja, hogy márpedig csak ekkora meg ekkora lehet...a másik változatot:
int i = 0;
while((c = getchar()) != '\n') string[i++] = c;
string[i] = '\0';a probléma ugyanaz, ha nem fér el a megadott helyen (regényt adsz neki), akkor elszáll a program, de ha meg van adva a méret, használható...
ez utóbbiból azonban ki lehet indulni, ha dinamikusan akarjuk a memóriát lefoglalni: legjobb megoldás talán az, hogy foglalunk x méretűt, ha elérjük az x-et, foglalunk még egyszer akkorát, aztán a legvégén, amikor már az egész string megvan, megnézzük a méretét (vagy vesszük az i értékét), foglalunk egy akkorát, és belemásoljuk - így pont akkora helyet foglalunk neki, amekkora...
Ú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!
- Jolla és SailfishOS tapasztalatcsere
- Luck Dragon: Asszociációs játék. :)
- Intel Core i5 / i7 / i9 "Alder Lake-Raptor Lake/Refresh" (LGA1700)
- 10 hasznos trükk Xiaomi / Redmi / Poco telefonokhoz
- Honor Magic8 Pro - bevált recept kölcsönvett hozzávalókkal
- ThinkPad (NEM IdeaPad)
- Tőzsde és gazdaság
- Kormányok / autós szimulátorok topikja
- Hobby rádiós topik
- SSD kibeszélő
- További aktív témák...
- Lenovo Thinkpad P1 Gen 6 - i9-13980HX, 32GB, 2TB SSD, 16" WQUXGA (3840 2400), RTX 4090
- Dell Latitude 7340 2-in-1 i5 13.gen, 16GB DDR5, 512GB SSD, QHD+ érintőkijelző, ÚJ ÁLLAPOT!
- ÁRGARANCIA! Épített KomPhone Ultra 9 285K 64GB RAM RTX 5090 32GB GAMER PC termékbeszámítással
- Dell 14 Latitude 7450 WUXGA 2in1 Touch X360 Ultra5 135U 12mag 16GB 512GB Win11 Pro WiFi7 Garancia
- Samsung Galaxy A35 5G 6/128GB / 12 hó jótállás
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
)

