Hirdetés
- iPhone topik
- Hivatalos a OnePlus 13 startdátuma
- Motorola Edge 70 - többért kevesebbet
- Samsung Galaxy Watch4 és Watch4 Classic - próbawearzió
- Yettel topik
- „Új mérce az Android világában” – Kezünkben a Vivo X300 és X300 Pro
- Olyan lesz a Google Térkép, mint a segítőkész haver az anyósülésen
- Huawei P40 Pro - kilökték a célegyenesben
- Google Pixel topik
- Xiaomi 15T Pro - a téma nincs lezárva
Új hozzászólás Aktív témák
-
WonderCSabo
félisten
válasz
it_service
#3281
üzenetére
Félreérted a C string kezelését. Stringeket akarsz beolvasni, nem?
C-ben a stringek karakter tömbbökként vannak reprezentálva. Minden string végén kell lennie egy lezáró 0 -nak a tömbben. Ez nem a tömb végét, hanem a string végét jelzi, ergó a tömbben bárhol, lehet. A stringnek bele kell férnie a lezáró nullával együtt a tömbbe, különben gáz lesz (ergó a tömb mérete > string hossza - 1).
Tehát, amikor Te beolvastad a tömbbe a stringet, akkor nem az n-dik string sort írtad bele, és tároltad az összeset, hanem csak mindig felülírtad az előzőt, mivel egy karaktertömb egy stringet tárol (persze még ez se ment, mivel rossz volt a szintaktika).
Átírtam, így mindig beolvassa a stringet, és ha a 100-at olvasta be, akkor kiírja.
Ha stringek tömbjét akarsz, akkor karakterek mátrixában kell tárolnod őket.
A számlálóra pedig 100-at kell vizsgálnod, nem 99-et, mivel a vizsgálat előtt növeled meg azt, nem utána, és 0-ról indul.
system hívásokat meg ne használj ilyenre. Ha meg akarod akadályozni az ablak bezáródásást, hívj egy getchar() -t a return előtt. Return pedig mindig kell a main fv.-ben ... (meg persze minden nem void fv.-ben)
#include <stdio.h>
int main()
{
FILE* file = fopen("beolvas.txt", "r");
char str[200];
int szamlalo = 0;
while(fscanf(file, "%s", str) != EOF)
{
szamlalo++;
if(szamlalo == 100)
printf("%s", str);
}
fclose(file);
getchar();
return 0;
}
Ú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!
- Zalman S5 ATX ház + Asrock B550M lap + Zalman Megamax 700w 80+
- Nintendo Switch Játékok EGYBEN baráti áron,akár viszonteladóknak is megéri. ELADÓ,VAGY CSERE,OLVASS.
- Eladó ASUS VP249QGR 24" gamer monitor
- Asztali PC , R5 5500 , RX 5700 XT , 16GB RAM , 512GB NVME , Kijelző
- Google Pixel 9 Pro XL 256GB Gari: 2028.04
- Bomba ár! Lenovo ThinkPad L520 - i3-2GEN I 4GB I 160GB I DVDRW I 15,6" HD I Cam I W10 I Garancia!
- Veszünk: PS5 Fat/Slim/Digital/Pro konzolt, játékokat, Portalt stb. Kérj ajánlatot!
- HIBÁTLAN iPhone 14 Pro 256GB Deep Purple -1 ÉV GARANCIA - Kártyafüggetlen, MS3516, 94% Akkumulátor
- Gamer PC-Számítógép! Csere-Beszámítás! R5 8400F / RTX 3070Ti / 32GB DDR5 / 1TB SSD!
- Huawei Freebuds 6 fülhallgató
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: NetGo.hu Kft.
Város: Gödöllő


