Plnění proměnných po bytech? – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Plnění proměnných po bytech? – C / C++ – Fórum – Programujte.comPlnění proměnných po bytech? – C / C++ – Fórum – Programujte.com

 

Maděj
~ Anonymní uživatel
2 příspěvky
5. 1. 2023   #1
-
0
-

struct data
{

int x;

short y;

unsigned char z;

}

unsigned char pole[7];

Mějme tuto strukturu a pole oboj9 vlastně 7 bytů.

b poli jsou vlstně byt po bytu data , které patří do struktury, otázkou je jak je tam dostat?

Nahlásit jako SPAM
IP: 2a0b:f4c2::11...–
liborb
~ Anonymní uživatel
2693 příspěvků
5. 1. 2023   #2
-
0
-

memcpy

Nahlásit jako SPAM
IP: 188.75.130.–
Maděj
~ Anonymní uživatel
2 příspěvky
5. 1. 2023   #3
-
0
-

#2 liborb

ó, jak jednoduché, občas si sedim na vedeni.

Když už řešíme ukazatele

mějme nasi strukrutu Data a ukazatel na strukturu cData;

cData+4 bude ukazovat na pamět posunutou o 4 struktury Data

Jak ale ziskat ukazatel na cData plus 4 byty?

Nahlásit jako SPAM
IP: 2a03:94e0:ffff:185:181:61:0:23...–
Berger0
Duch
5. 1. 2023   #4
-
0
-

#3 Maděj
pokud struktura Data bude obsahovat

unsigned int x;
unsigned int y;

a pdata bude ukazatel na strukturu

unsigned int x = 123;
memcpy(pDara, &x, 4);
memcpy((unsigned char*) pdata+4, &x, 4);

první memcpy nakopiruje 123 do data.x a druhe do data.y

(unsigned char*)  přetypovalo ukazatel na ukaztel na uchar a jeho zvýšenín o 4 se ikaztel posune o 4 byty,

Nahlásit jako SPAM
IP: 89.102.19.–
28. 1. 2023   #5
-
0
-

#1 Maděj
nice

Nahlásit jako SPAM
IP: 2401:4900:1c54:ad88:74a9:6cc4:4ec4:1038...–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 14 hostů

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý