- Kiemelkedően csendes ASUS VGA jött a Noctua közreműködésével
- Mini kijelzős SSD-hűtő a Thermalright névjegyével
- Windows: mi történik valójában Leállításkor, Alvó módban és Újraindításkor?
- Gyenge Wi-Fi otthon? – a leggyakoribb hibák és megoldások
- Korábbi vezetője szerint 40 milliárd dollár kell az Intel versenyképességéhez
- Így VERNEK ÁT a KAMU webshopok!
- Melyik tápegységet vegyem?
- Milyen videókártyát?
- Kiemelkedően csendes ASUS VGA jött a Noctua közreműködésével
- Házimozi belépő szinten
- Milyen billentyűzetet vegyek?
- Sony MILC fényképezőgépcsalád
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- iPad topik
- Milyen monitort vegyek?
Hirdetés
Ú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!
- Bomba ár! Dell Inspiron 15 3511 - i5-11GEN I 8GB I 256SSD I HDMI I 15,6" FHD I Cam I W11 I Gari
- Villámgyors teljesítmény és 10 év nyugalom!
- DELL PowerEdge R630 rack szerver - 2xE5-2680v4 (28c/ 56t, 2.4/3.3GHz), 128GB RAM, 10G, áfás szla
- Konzol felvásárlás!! Playstation 5, Playstation 5 Pro
- Xiaomi Redmi Note 13 5G 256GB, Kártyafüggetlen, 1 Év Garanciával
Állásajánlatok
Cég: FOTC
Város: Budapest