- ASUS ROG Ally
- Az időjárás borongósabbra váltott, de a hardverek még vígadnak
- RAM topik
- Azonnali informatikai kérdések órája
- OLED TV topic
- Kormányok / autós szimulátorok topikja
- Gaming notebook topik
- Intel Core Ultra 3, Core Ultra 5, Ultra 7, Ultra 9 "Arrow Lake" LGA 1851
- Bambu Lab 3D nyomtatók
- Milyen videókártyát?
Ú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!
- VGA kibeszélő offtopik
- Óra topik
- ASUS ROG Ally
- gban: Ingyen kellene, de tegnapra
- A fociról könnyedén, egy baráti társaságban
- Az időjárás borongósabbra váltott, de a hardverek még vígadnak
- sziku69: Fűzzük össze a szavakat :)
- RAM topik
- Azonnali informatikai kérdések órája
- OLED TV topic
- További aktív témák...
- Féláron eladó vadonatúj razer blade 14 rtx 3080ti
- 500 ezerrel ár alatt! Vadonatúj garanciás razer blade 16 oled kijelző rtx 4070
- Hardverapró árérték bajnoka! Razer blade rtx 3080 ti i9 32gb ddr5 4k kijelző 144hz!
- Eladó kiskergaris 18TB-os Seagate EXOS X18 Enterprise HDD
- Félkonfig // I7 7700, GTX 1070, 16 GB DDR4
- Samsung Galaxy Tab S8 / 8/128GB / Kártyafüggetlen / 12 HÓ Garancia
- KIÁRUSÍTÁS - HP Elite / ZBook Thunderbolt 3 docking station (akár 2x4K felbontás)
- Új és újszerű 13-14 Gamer, ultrabook, üzleti, 2in1, X360, Touch készülékek kedvező áron Garanciával
- HIBÁTLAN iPhone 11 Pro 256GB Midnight Green -1 ÉV GARANCIA - Kártyafüggetlen, MS3546
- Telefon felvásárlás!! Samsung Galaxy A70/Samsung Galaxy A71/Samsung Galaxy A72
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest