- Milyen okostelefont vegyek?
- Xiaomi 15 - kicsi telefon nagy energiával
- Samsung Galaxy Z Fold5 - toldozás-foldozás
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- Google Pixel topik
- Műholdakkal is beszélgethet a Redmi Note 15 Pro+
- Samsung Galaxy S25 - végre van kicsi!
- iPhone topik
- Ezek az új Google Pixel cuccok hivatalos magyar árai
- Motorola Edge 50 Neo - az egyensúly gyengesége
Ú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!
- Milyen CPU léghűtést vegyek?
- Elemlámpa, zseblámpa
- sh4d0w: Netflix? Ugyan, VW előfizetés!
- Linux felhasználók OFF topikja
- Kerékpárosok, bringások ide!
- Milyen okostelefont vegyek?
- The Division 2 (PC, XO, PS4)
- Xiaomi 15 - kicsi telefon nagy energiával
- Kínai és egyéb olcsó órák topikja
- Leégett az első Radeon a hírhedt 12V-2x6 tápkonnektorral
- További aktív témák...
- Asus ROG Strix Flare II Animate Gamer Billentyűzet - Magyar kiosztás
- Lenovo 14 Ideapad 3 FHD LED Matt i3-1115G4 4.1Ghz 8GB 256GB SSD Intel UHD Graphics Win11 Garancia
- Acer, notebook, laptop, Ryzen 5 5500u, 16gb ddr4, 1tb ssd, 15.6 col
- Eladó 3. generációs I7-es számítógép
- ASUS ROG STRIX 850W 80 PLUS Gold - Garancia 2033.05.04
- BESZÁMÍTÁS! Microsoft XBOX One S 512GB lemezes konzol + 6db játék garanciával hibátlan működéssel
- Xiaomi Mi 10T Pro 128GB, Kártyafüggetlen, 1 Év Garanciával
- GYÖNYÖRŰ iPhone 13 256GB Pink -1 ÉV GARANCIA - Kártyafüggetlen, MS3207
- Gombászkönyvek egyben
- REFURBISHED - Lenovo ThinkPad 40A9 docking station
Állásajánlatok
Cég: FOTC
Város: Budapest