Mam problem ze wskaźnikiem tzn.
Jest struktura
W komórce adres będzie zapisana wartość 0x8000 i chciałbym żeby wskaźnik
przyjmował tą wartość tzn. gdy będe zapisywał coś do struktury to żeby strukrura zaczynała się od 0x8000
Napisałem taki program ale nie działa prawidłowo jak by ktoś mógł spojrzeć i powiedzieć co jest nie tak bym był wdzięczny z góry dzięki.
Jest struktura
xdata struct _8bajt {
int adres;
char wolna;
struct _8bajt *nastepna;
}_8bajt_;W komórce adres będzie zapisana wartość 0x8000 i chciałbym żeby wskaźnik
xdata struct _8bajt *wsk;przyjmował tą wartość tzn. gdy będe zapisywał coś do struktury to żeby strukrura zaczynała się od 0x8000
Napisałem taki program ale nie działa prawidłowo jak by ktoś mógł spojrzeć i powiedzieć co jest nie tak bym był wdzięczny z góry dzięki.
#include <reg52.h>
//#include <stdio.h>
xdata struct _8bajt {
int adres;
char wolna;
struct _8bajt *nastepna;
}_8bajt_;
void init_struct(void) {
_8bajt_.adres = 0x8000;
_8bajt_.wolna = 0x00;
}
void main(void) {
xdata struct _8bajt *wsk;
init_struct();
wsk = &_8bajt_;
wsk = (void*)wsk->adres;
wsk->adres = 0x8100;//Tutaj ma być zapis do struktury która znajduje się pod adresem 0x8000
}