Hirdetés
- Milyen Android TV boxot vegyek?
- Ha sokat küzdünk a porral, a GEEEK megfizethető "házát" nem nekünk találták ki
- Intel Core Ultra 3, Core Ultra 5, Ultra 7, Ultra 9 "Arrow Lake" LGA 1851
- Meglepő, de részben hangtalan a Colorful új, kompakt VGA-ja
- Ami Kínában OnePlus Pad Pro, az errefelé mégis csak Pad 2 lett
- Gaming notebook topik
- Vezeték nélküli fejhallgatók
- Sok hűhó négyszázért: AMD Ryzen 7 9850X3D
- E-book olvasók
- Duplázik a NAND is: a Samsung 100%-os áremelésben gondolkodik
Új hozzászólás Aktív témák
-
kovisoft
őstag
válasz
DopeBob
#6140
üzenetére
Megpróbáltam lefordítani az eredeti kódodat, de nekem (treat warnings as errors beállítással) fordítási hibát dobott a scanf és a printf sorokra. Érthető, mivel az int (*statData)[statDay][OPEN_HOURS] egy kétdimenziós tömbre mutató pointer, nem pedig egy kétdimenziós tömb. A statData[i][j] nem egy int-et, hanem egy pointert jelent. Cast-olással kierőszakoltam, hogy leforduljon, valamint felcseréltem a statData deklarációjában a sorokat és az oszlopokat (int (*statData)[OPEN_HOURS][statDay]), és így már ez a változat is működött.
Ökölszabályként azt tartsd szem előtt, hogy amikor egy pointert deklarálsz, akkor azt tömbként is tudod használni (meg tudod indexelni [i] stílusban), tehát úgy is felfogható a dolog, hogy egy * ugyanúgy hozzáad egy dimenziót a deklarált tömbödhöz, mint egy [SIZE]. Fordítva is igaz a dolog: egy tömb utolsó dimenzióját lehagyva egy pointert kapsz.
Vagyis amikor ezt írod le: int (*statData)[OPEN_HOURS][statDay], akkor ez igazából egy 3 dimenziós tömb, aminek az első két dimenziója a fix [OPEN_HOURS] és [statDay], a harmadik dimenziója dinamikus, és ennek mérete a malloc-ban megadott értékből jön, ami jelen esetben [1] (mivel a teljes allokált méret OPEN_HOURS*statDay*1). Éppen ezért az így deklarált tömb elemeire ezen a módon kell hivatkozni: statData[i][j][0]. Kipróbáltam ezt is, és így is működik. Ezzel együtt nem javaslom ennek a formának a használatát, és nem is értem, hogy a Pluralsight miért így tanítja.
-
kovisoft
őstag
Ú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!
- ubyegon2: Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
- Milyen okostelefont vegyek?
- Google Pixel 9 Pro XL - hét szűk esztendő
- Milyen Android TV boxot vegyek?
- Ha sokat küzdünk a porral, a GEEEK megfizethető "házát" nem nekünk találták ki
- Intel Core Ultra 3, Core Ultra 5, Ultra 7, Ultra 9 "Arrow Lake" LGA 1851
- Meglepő, de részben hangtalan a Colorful új, kompakt VGA-ja
- Privát AI mobil lesz az S26, nem okostelefon
- sziku69: Fűzzük össze a szavakat :)
- Xbox Series X|S
- További aktív témák...
- Új MSI Modern 15 FHD IPS Ryzen5 7530U 4.5Ghz 16GB 512GB SSD Radeon RX Vega7 Graphics Win11 Garancia
- Samsung Galaxy S24 FE 128GB, Kártyafüggetlen, 1 Év Garanciával
- DELL Precision 5540 Workstation i7-9850H Nvidia Quadro T1000 32GB 512GB 15.6" 1 év garancia
- Azonnali készpénzes GAMER / üzleti notebook felvásárlás személyesen / csomagküldéssel korrekt áron
- Készpénzes / Utalásos Számítógép felvásárlás! Személyesen vagy Postával!
Állásajánlatok
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs
Cég: Laptopműhely Bt.
Város: Budapest


