- Súlyos adatvédelmi botrányba kerülhet a ChatGPT az EU-ban
- DIGI internet
- Vodafone otthoni szolgáltatások (TV, internet, telefon)
- HBO Max & OD topic
- Az Apple iPadOS-t is megrendszabályozza az EU
- Az USA nem akarja visszafogni Kína növekedését
- Linux - haladóknak
- Microsoft Excel topic
- Python programozás
- Synology NAS
Aktív témák
-
atee07
tag
A tomb egyébként megy,ahogy írtad,mert mindig lép a következő memóriacímre,és a *-al az ottani helyre írja be az értéket.A deklarácoió szerintem jó,ez egy sima mutatókból álló tömb,ahol a mutatók egy long int típusú adatra mutatnak.Ja ez ANSI C,nem C++,legalábbis az Szsolt által leírt.
''Egyszer annyira depressziós voltam,hogy le akartam ugrani a tizedikről.Hívtak egy papot,aki ennyit mondott:Elkészülni... Vigyázz...'' - Woody Allen
-
Szsolt
tag
Ebben eggyetértek Atee-val, mert az oké, hogy a tömbre mutat egy mutato:
az a *tomb, de mivel ez egy mutato, mely egy long decimal típus, műveletet végezhetünk vele. Ha hozzáadunk 1-et a tomb mutatóhoz, akkor a tomb[0] -ról a tomb[1]-re ugrik, és *(tomb+1)-el vagy tomb-vel hivatkozunk, arra a memóriacímre.
Javítsatok ki ha tévedek... -
yerico
senior tag
Most lehet, hogy hülyeséget írok, de a *(tomb + j) esetében, mikor a tömb egy long tömb, akkor a tomb+j helyett nem kellene tomb + j*sizeof(long) véletlenül, mivel a long az 4 byte-on tárolódik, így egy 640* 480-as long tömb az 640 * 480 *4 byte nagyságú lesz. Egyébként meg érdemesebb dupla forciklusban tomb[j]-ként használni, mert sokkal jobban átlátható, felesleges egydimenziós tömbként használni. A mutatós címzést nem szoktam használni, áttekinthetetlenné teszi a kódot, pár magasabb szintű kódolási tudásról árulkodik
Persze ekkora tömb már lehet, hogy nem fér a stackbe, ezért kell a dinamikus memóriafoglalás, viszont akkor fel is kell majd a végén szabadítani. -
-
yerico
senior tag
A kétdimenziós tömbnél ugyebár pointerekre mutató pointertömböd lesz , azaz foglalsz 640 db 480 elemű longra mutató pointernek helyet. Ennek az elemeit már **-gal éred el, és nem sima *-ként. A sima esetben lesz egy 640*480 longot tartalmazó tömbre egy pointered, a 2D esetben egy 640 elemű long pointert tartalmazó tömbre mutató pointered.
Jelen esetben a long és a pointer mind 4 byte-on tárolódik (pointer = long ugyebár), ezért itt megegyezik, de nem feltétlenül fog megegyezni char esetén pl.
Apropó, ez ilyenkor feltételezi, hogy a 480 elemű tömböknek egyesével foglalsz helyet.
Aktív témák
- Súlyos adatvédelmi botrányba kerülhet a ChatGPT az EU-ban
- BestBuy topik
- gban: Ingyen kellene, de tegnapra
- Samsung Galaxy S23 és S23+ - ami belül van, az számít igazán
- Autós topik látogatók beszélgetős, offolós topikja
- VR topik (Oculus Rift, stb.)
- No Rest for the Wicked
- Apple notebookok
- Nvidia GPU-k jövője - amit tudni vélünk
- Napelem
- További aktív témák...