Hirdetés
- Luck Dragon: Asszociációs játék. :)
- juhi11: Karácsony esély, hogy észrevegyük: mások is valakik - még Isten is
- btz: Internet fejlesztés országosan!
- sziku69: Szólánc.
- sziku69: Fűzzük össze a szavakat :)
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- gban: Ingyen kellene, de tegnapra
- Toomy: FOXPOST: régen jó volt, de már jobban jársz, ha elfelejted
- Gurulunk, WAZE?!
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
Új hozzászólás Aktív témák
-
G.A.
aktív tag
Üdv!
8Bites mikróvezérlőhöz írogatok kódot, amit VS 2015-ben (C++) tesztelek.
A vezérlőre írt kódot C-ben írom, de a teszthez használt segédfunkciókhoz C++-t is használok.A probléma:
globális struktúra (pontosabban union) tömböt(pointert?) szeretnék funkcióval manipulálni (méret megadása, adatokkal feltöltés)Kódban kifejezve:
typedef union dns_answer
{
struct
{
my_16b name;
my_16b type;
my_16b rrs_class;
my_32b ttl;
my_16b rd_length;
my_32b data;
};
u8b b[16];
}dns_answer;
void function(u8b data[], dns_answer** answer)
{
dns_answer local_answer;
*dns_response = (dns_answer*)malloc(data[7] * sizeof(dns_answer));
for(u8b i = 0; i < data[7]; i++)
{
for (u8b x = 0; x < 4; x++)
{
local_answer.data.b[x] = data[x];
//*dns_response[i].data.b[x] = data[x];
}
*dns_response[i] = local_dns_resp; // HIBA ITT
}
}
dns_answer* answer_array = NULL;
u8b data[512] = {};
int main(void)
{
...
function(data, &answer_array);
...
}Ezzel a kóddal jelenleg az a problémám, hogy:
Ha érkezik egy adatcsomag(DNS üzenet), ahol több válasz van (data[7] > 1), akkor a jelölt helyen (HIBA ITT)
áll meg a kód... Hibaüzenet: Access violation writing location 0x00000000Ha jól értem olyan címre akar írni, ami nem létezik. A hiba eredetét a malloc()-ra tippelem. Következtetésem az, hogy ha kihagyom a function()-ban a malloc()-ot és az inicializáláskor az int main() előtt megadom a tömb méretet, akkor nincs ez a hiba.
Hogyan méretezhetném újra a struktúra tömbömet (dns_answer* answer_array) a funkción belül, úgy hogy az globálisan is megvalósuljon?illetve., hogy kerülhetném ki a function()-ban az átmeneti lokális struktúra használatát?
Ú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!
- Kellemes karácsonyi ünnepeket!
- A Windows 11 nem akarja ránk erőltetni az AI applikációkat – vagy mégis?
- Nintendo Switch 2
- Samsung Galaxy Felhasználók OFF topicja
- NVIDIA GeForce RTX 4080 /4080S / 4090 (AD103 / 102)
- Gumi és felni topik
- Foxpost
- Kormányok / autós szimulátorok topikja
- Luck Dragon: Asszociációs játék. :)
- juhi11: Karácsony esély, hogy észrevegyük: mások is valakik - még Isten is
- További aktív témák...
- Keystation 49 (Midi controller)
- ÚJ, bontatlan Playstation 5 slim digital + EA Sports FC26 2 év garancia!
- Asztali PC , i7 7700 , 1660 Super , 16GB RAM , 256GB NVME , 500GB HDD
- 8GB DDR3 1600Mhz SO-DIMM , Laptop RAM
- LG 32GP850-B 32'' Sík QHD 165 Hz 16:9 G-Sync/FreeSync NanoIPS Gamer Monitor - Karácsonyi akcióban!
- Bomba ár! Lenovo ThinkPad X280 - i5-G8 I 8GB I 256SSD I 12,5" FHD Touch I HDMI I Cam I W11 I Gari!
- HIBÁTLAN iPhone 12 Pro Max 128GB Pacific Blue -1 ÉV GARANCIA - Kártyafüggetlen, 100% Akkumulátor
- BESZÁMÍTÁS! MSI B450M R5 5600X 16GB DDR4 512GB SSD RX 9060 XT 16GB Rampage SHIVA ADATA 650W
- LG 35WN75C-B - 35" Ívelt VA - 3440x1440 - 100Hz 5ms - USB Type-C 60W - AMD FreeSync - HDR 10
- LG 27GX790A - 27" OLED evo / QHD 2K / 480Hz & 0.03ms / NVIDIA G-Sync / FreeSync / DP 2.1 / HDMI 2.1
Állásajánlatok
Cég: Laptopszaki Kft.
Város: Budapest
Cég: BroadBit Hungary Kft.
Város: Budakeszi

