- sziku69: Fűzzük össze a szavakat :)
- sziku69: Szólánc.
- ubyegon2: Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
- bitpork: Phautós tali a Balcsinál 2025 Augusztus 2 napján (szombat)
- Gurulunk, WAZE?!
- gban: Ingyen kellene, de tegnapra
- Luck Dragon: Asszociációs játék. :)
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- GoodSpeed: AMD Ryzen 9 9900X (100-100000662WOF)+ Samsung 990 PRO 2TB MZ-V9P2T0BW
- Real Racing 3 - Freemium csoda
Hirdetés
Ú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!
- Csere-Beszámítás! Ajándék ROG Táska! Asus Rog Ally Z1 Extreme RC71L - 512GB SSD + 16GB LPDDR5
- HP Elite / ZBook Thunderbolt 3 docking station
- Telefon felvásárlás!! iPhone X/iPhone Xs/iPhone XR/iPhone Xs Max
- 3DKRAFT.HU - 3D NYOMTATÁS - AZONNALI ÁRAJÁNLAT - GYORS KIVITELEZÉS - 490+ POZITÍV ÉRTÉKELÉS
- 2 TB-os Kingston NV3 M.2 SSD - 6000 MB/s olvasás
Állásajánlatok
Cég: FOTC
Város: Budapest