- HiFi műszaki szemmel - sztereó hangrendszerek
- Gaming notebook topik
- 3D nyomtatás
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- AMD vs. INTEL vs. NVIDIA
- Milyen belső merevlemezt vegyek?
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- TCL LCD és LED TV-k
- Csendben mutatkozott be a Galaxy S10 Lite
- Milyen processzort vegyek?
Új hozzászólás Aktív témák
-
Korcsii
őstag
válasz
gergo00 #2372 üzenetére
nah, szóval hogy olvasunk be sztringet?
char szoveg[123];
scanf("%s", szoveg);mondjuk ha azt írod be, hogy alma, akkor a végeredmény ez lesz:
szoveg[0] = 'a';
szoveg[1] = 'l';
szoveg[2] = 'm';
szoveg[3] = 'a';
szoveg[4] = '\0';magyarul a sztringeket a hosszuknál eggyel nagyobb char tömbben tároljuk
mivel neked kell még egy sor és egy oszlop/szó is (legalábbis remélem jól értettem), ezért kell még 2 dimenzió ezeknek is...
1. sor
2. oszlop/szó
3. karakter helyepl
char szoveg[12][12][123];
scanf("%s", szoveg[0][0]);
szoveg[0][0][0] = 'a';
szoveg[0][0][1] = 'l';
szoveg[0][0][2] = 'm';
szoveg[0][0][3] = 'a';
szoveg[0][0][4] = '\0'no de ez ronda, mert ki tudja, hogy hány oszlop/sor kell, illetve milyen hosszú lesz a szöveg, amit tárolni akarunk...
erre jó a dinamikus memóriafoglalás, úgy csak annyit foglalunk le, amennyi tényleg kelleni fog (a mostani esetben 12*12*123 bájtot foglaltunk le, függetlenül attól, hogy tárolunk-e benne valamit)... viszont jó pár sorral több lesz úgy a kód, meg kicsit jobban oda ekll figyelni...
viszont érettséginél mindig megmondják, hogy max mekkora lehet (legalábbis tavalyig így volt), így csak azokat az értékeket kell behelyettesíteni...
-
Korcsii
őstag
válasz
gergo00 #2367 üzenetére
char *tomb[25][25][123];
while (!feof(fp))
{
fscanf(fp, "%s", tomb[sor][oszlop]);
}a kódodból kiindulva így gondoltam a 3D tömböt... mondjuk abban nem vagyok biztos, hogy a feof() nem csak eggyel később így fog igazzal visszatérni...
dinamikusan ez jóval összetettebb, de végül is szebb megoldást ad...
-
Korcsii
őstag
válasz
gergo00 #2365 üzenetére
ha 2 dimenziós tömbben akarsz stringet tárolni (pl [sor][oszlop]), akkor 3 dimenziós char tömb kell... vagy egy 2 dimenziós char * tömb, és akkor csak a pointerét tárolod, viszont akkor dinamikusan kell neki memóriát foglalni, és annak a helyét megadni pointernek... én érettségin az előbbit választottam, főleg azért, mert a dinamikus foglalásig nem jutottam el (nekem sem volt tanárom)...
Új hozzászólás Aktív témák
Hirdetés
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- HiFi műszaki szemmel - sztereó hangrendszerek
- Gaming notebook topik
- Autós topik látogatók beszélgetős, offolós topikja
- 3D nyomtatás
- Autós topik
- MG topik
- Motoros topic
- Hivatalosan is részesedést vásárolt az Intelben az USA kormánya
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Videó stream letöltése
- További aktív témák...
- AKCIÓ! ASUS H81M-PLUS H81 chipset alaplap garanciával hibátlan működéssel
- Eredeti Lenovo USB-C 65W töltő (használtak)
- BESZÁMÍTÁS! Gigabyte B85M-D3H B85 chipset alaplap garanciával hibátlan működéssel
- iPhone 16 128GB Black -1 ÉV GARANCIA - Kártyafüggetlen, MS3096, 97% Akkumulátor
- BESZÁMÍTÁS! Apple MacBook Pro 16 M4 Max 36GB RAM 1TB SSD macbook garanciával hibátlan működéssel
Állásajánlatok
Cég: FOTC
Város: Budapest