- sziku69: Szólánc.
- sziku69: Fűzzük össze a szavakat :)
- Luck Dragon: Asszociációs játék. :)
- gban: Ingyen kellene, de tegnapra
- Luck Dragon: MárkaLánc
- Gurulunk, WAZE?!
- MasterDeeJay: RAM gondolatok: Mennyi a minimum? DDR3 is jó?
- ldave: New Game Blitz - 2026
- hmzs: Fujitsu Futro S920 csúcsra járatva
- aquark: Flipper PC-n!
Ú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!
- Milyen videókártyát?
- Last contact: rejtélyes körülmények között semmisült meg a 34343-as műhold
- Folyószámla, bankszámla, bankváltás, külföldi kártyahasználat
- VoLTE/VoWiFi
- Samsung Galaxy A55 - új év, régi stratégia
- Villanyszerelés
- Kés topik
- Éjszakai műszak
- Gitáros topic
- sziku69: Szólánc.
- További aktív témák...
- Lenovo IdeaPad 5 2-in-1 16IRU9 Laptop - 16" Touch, Intel Core i5 120U, 16 GB, 512 GB - Garanciával
- Eredeti fake/full kamu 1TB SSD + kamu 512GB sd cardel (ajándék)! Oktatás, blog, prezentációs célra!
- Erős (HP Omen 17) gamer Laptop! -i9 13900HX, RTX 4090 16gb/175w tgp, 32gb DDR5, 1tb SSD
- riello UPS SDH 3000 - Szünetmentes tápegység - 3000 VA -2U
- Fortinet FortiGate 100E - Tűzfal
- Lenovo X1 Yoga gen. 6. // i7-1185g7 // 32GB // 512GB // ÚJSZERŰ!!! // ÚJ ÁRA 1.408.990.-Ft!!!!!!
- Dell Latitude 5400 14" FHD IPS, i5 8365U, 8-16GB RAM, SSD, számla, 6 hó gar
- Részletfizetés BankMentes Kamatmentes 12 havi részlet Lenovo Legion Pro 7 27% Áfás számla
- Surface Pro 7+ i5-1135G7 16G 256GB 1 év garancia
- Lenovo ThinkPad T14 Gen1 Intel i5-10310U Refurbished - Garancia
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
