- Apple MacBook
- Projektor topic
- AMD Navi Radeon™ RX 9xxx sorozat
- OLED monitor topic
- Kormányok / autós szimulátorok topikja
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- Fejhallgató erősítő és DAC topik
- Jó a retró: Chieftec UNI számítógépház
- Philips LCD és LED TV-k
- Milyen asztali (teljes vagy fél-) gépet vegyek?
Ú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!
- Apple MacBook Pro 14" (2021) M1 Pro - 32GB/1TB / 91% akku - Újszerű - 12 hónap garancia
- Lenovo Thinkpad x13 (i5 10th, 8 GB, 240 SSD) AkciÓÓ!
- Corsair Vengeance RGB 64GB (2x32) DDR5 6000Mhz for AMD // Számla // Garancia//
- HP Eltebook x360 1030 G2 tablet+laptop (i5 7th, 8 GB, 128 GB SSD FHD) AkciÓÓ!
- iPad 10 Eladó Újszerű GARIS!! INGYEN CSOMAGKÜLDÉS!!
- 0% THM 4 havi részlet, beszámítás! Gamer PC, notebook, konzol, Apple termék, hardver KAMATMENTESEN!
- Nothing Phone (1) / 8/256GB / Kártyafüggetlen / 12Hó Garancia /
- Lenovo T480S i5 8350U, 16GB RAM, 256GB SSD, jó akku, számla, 6 hó gar
- Lenovo ThinkPad T590 15,6" - i5 8265U, 8-16GB RAM, SSD, jó akku, számla, 6 hó gar
- 27% - MOMODS 15.6" 1080P FHD IPS FreeSync Portable Hordozható monitor!
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

)
