Hirdetés
- Intel Core i5 / i7 / i9 "Alder Lake-Raptor Lake/Refresh" (LGA1700)
- Milyen egeret válasszak?
- Hővezető paszták
- Hivatalosan is elkezd védekezni az Intel csodafegyvere ellen az új Geekbench
- Noctua+Asetek: egyre közelebb a Noctua első vízhűtése
- AMD vs. INTEL vs. NVIDIA
- Milyen HASZNÁLT notebookot vegyek?
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- Szomjan halunk, míg az AI dolgozik
- AMD Navi Radeon™ RX 7xxx sorozat
Ú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!
- sziku69: Fűzzük össze a szavakat :)
- Így lehet kiszúrni, ha kamu AirPods fülest akarnak eladni neked
- Milyen program, ami...?
- Intel Core i5 / i7 / i9 "Alder Lake-Raptor Lake/Refresh" (LGA1700)
- Audi, Cupra, Seat, Skoda, Volkswagen topik
- Gyúrósok ide!
- Kerékpárosok, bringások ide!
- Milyen egeret válasszak?
- Formula-1
- 12 percnyi játékmenet bemutatót kapott a Mortal Shell II
- További aktív témák...
- HP Probook 430 G7 (Intel Core i5-10210U 4 mag 8 szál, 13,3" FullHD) több darab, akár 24.990Ft
- Samsung A 56 5G telefon
- LENOVO LOQ 15ARP9 - RYZEN 7 7435HS / RTX4050 / 24GB RAM / 512G NVMe / 15,6 FHD IPS 144Hz (bontatlan)
- újszerű iPhone Air 256GB space black asztrofekete független Apple 3 év garancia iStyle vásárlás
- Armani Acqua di Giò Profondo Parfum 50ml
- darkFlash GR12 Darkstorm Blue/Green
- iPhone 12 128GB Black -1 ÉV GARANCIA - Kártyafüggetlen, MS4615, 100% AKKSI
- MacBook Pro 13" M1 16GB RAM/ 1TB SSD 27%-os ÁFÁS - 0429AB
- AKCIÓ! ASRock Formula OC RX 6900 XT 16GB videokártya garanciával hibátlan működéssel
- Dell Latitude 7420 Core i7-1185 G7, 16GB RAM, SSD, jó akku, számla, 6 hó gar, szép állapot
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

