Hirdetés
- ricsi99: 6. Genes alaplap tündöklése kontra MS/Zintel korlátozásai
- Luck Dragon: Asszociációs játék. :)
- f(x)=exp(x): A laposföld elmebaj: Vissza a jövőbe!
- Elektromos rásegítésű kerékpárok
- Meggyi001: Áram nélkül....méltóság nélkül.....
- Graphics: Telefonvásárlási kálváriám....avagy clickbait cím: Horror a hardveraprón
- sziku69: Fűzzük össze a szavakat :)
- hcl: Olympus E-PL1 nyomozás
- MasterDeeJay: Egy nem átlagos Asus videókártya (GTX950M 2GB GDDR3)
- gban: Ingyen kellene, de tegnapra
Ú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
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Elektromos autók - motorok
- Forza sorozat (Horizon/Motorsport)
- Anglia - élmények, tapasztalatok
- Nintendo Switch
- AMD vs. INTEL vs. NVIDIA
- Xiaomi 15T Pro - a téma nincs lezárva
- Kerékpárosok, bringások ide!
- Spórolós topik
- Mit tehetsz jogilag, ha átvertek, megkárosítottak a Hardveraprón?
- LEGO klub
- További aktív témák...
- BESZÁMÍTÁS! ASUS H510M i5 11400F 16GB DDR4 500GB SSD RX 6600 8GB Rampage SHIVA FSP 500W
- BESZÁMÍTÁS! Asus H310M i5 9400 16GB DDR4 500GB SSD GTX 1660 Super 6GB Rampage SHIVA DeepCool 400W
- BESZÁMÍTÁS! Asus Z370A i7 9700 16GB DDR4 512GB SSD RTX 3060 12GB Rampage SHIVA Adata 600W
- BESZÁMÍTÁS! ASRock B450M R5 3600 16GB DDR4 512GB SSD GTX 1660 Super 6GB Rampage SHIVA DeepCool 400W
- BESZÁMÍTÁS! ASROCK Z270 i5 7600 8GB DDR4 512GB SSD GTX 1660 Ti 6GB Rampage SHIVA DeepCool 400W
- Thrustmaster TMX Force Feedback Kormány szett 3 hónap Garancia Beszámítás Házhozszállítás
- Új Asus ROG Zephyrus G14 OLED 2.8K G-Sync 120Hz RyzenAI9 HX370 32GB 2TB RTX 5070Ti 12GB W11 Garancia
- BESZÁMÍTÁS! MSI B450M R5 3600 16GB DDR4 512GB SSD RTX 3050 8GB Formula Air Mesh G3 Seasonic 450W
- LG UltraWide 35WN75CP VA Monitor! 3440x1440 / 100Hz / sRGB 99% / FreeSync
- Samsung Galaxy S23 Ultra / 8/256GB / Kártyafügetlen / 12Hó Garancia
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
