Tak se o to snažím v wxDevC++ a marně. mám:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
typedef struct xx{
char short_text[20];
char full_text[40];
int predchozi;
int dalsi;
}MENU_ITEM;
int main(void)
{
int aktualniPolozka;
MENU_ITEM *polozka1,*polozka2;
polozka1 = (MENU_ITEM *) malloc(sizeof(MENU_ITEM));
polozka2 = (MENU_ITEM *) malloc(sizeof(MENU_ITEM));
strcpy(polozka1->short_text,"nazev pol1");
strcpy(polozka1->full_text,"dlouhy nazev pol1");
polozka1->dalsi = 111;//polozka2;
strcpy(polozka2->short_text,"nazev pol2");
strcpy(polozka2->full_text,"dlouhy nazev pol2");
polozka2->dalsi = 0;
aktualniPolozka = polozka1;
printf("%d\r\n",polozka1->dalsi);
printf("%d\r\n",aktualniPolozka+60*sizeof(char)+sizeof(int));
printf("%d",polozka2);
getchar();
return 0;
}
a chtěl bych, aby se mi do proměné polozka1->dalsi uložila hodnota adresa další struktury a tu si přes ukazatel aktualniPolozka zobrazil. Co mě na tom celém zaráží asi nejvíc je, že když definuju strukturu staticky, zabírá 68 byte, ovšem při dynamickém alokování 80 byte. Strukturu mi stačí alokovat staticky, jenže to mi už vůbec nefungovalo.
Výsledkem prinft má být 3x stejné číslo a to adresa další struktury