-
Data: 2013-05-17 09:42:18
Temat: Re: s->tab[i]
Od: Marcin <m...@o...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]> No właśnie. Co do panowania nad strukturą to nad nią panuję, bo mam ją po to
> żeby była to taka swoista "lookup table". Le to jedno miejsce nie działa i
> już wczoraj się dziwiłem co jest nie tak, robiłem podwójne inicjowaie
> wskaźników, dla pewności.
> Czy znaczy mam nie przyjmować do wiadomości, że adres struktury to początek
> pierwszego elementu? To jest wtgodne, bo raz rozmawiam ze struktuą, albo
> przez strukturę po elementach
>
> s->tab1[]
> s->tab2[]....
>
> a raz traktuję ją jako ciągły obszar jak kawałek ramu liczony od wskaśnika
> ustawionego na początek. Wszędzie mi działa tylko to kopiowanie nie działa.
>
> Ale jak wpiszę:
>
> s->tab[i] = ptr[0x98]; czy inny 0x to dane w tab[i] są dobre :-) Te co
> siedzą tam względem ptr. Tak jakby zmiennej nie brał pod uwagę. Zupełnie
> irracjonalna sprawa.
Czy w strukturze oprocz tablic sa jeszcze jakies inne dane ?
najlepiej podaj tu definicje calej struktury, bedzie wiadomo co w niej
siedzi.
Takie moje gdybanie bez znajomosci kodu. Na AVRy dosc dawno nie
pisalem, ze moze kompilator cos optymalizuje ( struct packed ??? ale
zastanawiam sie, czy packed dla 8 bitowej platformy ma znaczenie ??) .
Tablice zawarte w strukturze sa typu uint8_t ??
Sprobowalem taki kawalek kodu ale __UWAGA__ nie w AvrStudio !!
/*********************************/
typedef struct tdAvrStruct {
UINT8 i;
UINT8 tablica[10];
UINT16 tablica16 [10];
UINT16 licznik;
} AVR_STRUCT;
AVR_STRUCT myStruct, *pmyStruct;
UINT16 j;
pmyStruct = &myStruct;
for (j=0; j < 10; j++)
pmyStruct->tablica[j] = j;
for (j=0; j y 10; j++)
pmyStruct->tablica16[j] = 3 * pmyStruct->tablica[j];
/*********************************/
i po wykonaniu mam w tablica16 trzykrotnie zwiekszone wartosci
wczesniej zainicjalizowane w tablica.
mozesz tez sprobowac zamiast :
while (i--) {
s->tab[i] = ptr[i];
czegos takiego:
while (i--){
s->tab[i] = * (ptr + i );
}
teoretycznie to samo jak ptr[i], ale moze faktycznie kompilator cos
miesza?
Marcin
Następne wpisy z tego wątku
Najnowsze wątki z tej grupy
- Taśma izolacyjna do prac elektrycznych
- Recenzja 3.1A ;) w 6 gniazdach...
- Re: Recenzja 3.1A ;) w 6 gniazdach...
- Re: Recenzja 3.1A ;) w 6 gniazdach...
- Re: Recenzja 3.1A ;) w 6 gniazdach...
- Wkrętarki, wiertarki...
- Zasilacz impulsowy 12V 10A, coś godnego uwagi jako zamiennik akumulatora wkrętarki
- Mouser - koszt wysyłki
- [OT] Jak wycinac ksztalt w piance lub styropianie?
- FV--> ciepła woda w kranie
- Szok
- Dziwny schemat wzmacniacza m.cz.
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- CGNAT i ewentualne problemy
- wzmacniacz mocy
Najnowsze wątki
- 2025-07-01 Re: W USA już miliony mieszkają w swoich samochodach
- 2025-07-01 Wakacyjna promocja dla użytkowników samochodów ...
- 2025-07-01 Re: W USA już miliony mieszkają w swoich samochodach
- 2025-06-30 Re: W USA już miliony mieszkają w swoich samochodach
- 2025-07-01 Warszawa => Senior Account Manager <=
- 2025-07-01 Polska => Senior Key Account Manager <=
- 2025-07-01 Re: Prawo do komunii (KRK) [UK/Surrey/Dorking]
- 2025-07-01 Re: Czy Bodnar to prawny Makiawel? [Prawo "w likwidacji"]
- 2025-06-30 Arno van Kessel, [...] holenderski prawnik i krytyk polityki covidowej, został 11 czerwca 2025 roku zatrzymany przez oddział specjalny policji - bez postawionych zarzutów, bez przedstawienia dowodów i bez udziału opinii publicznej.
- 2025-06-30 Re: Prawo do komunii (KRK) [UK/Surrey/Dorking]
- 2025-06-30 Kraków => Koordynator Produkcji / Przedstawiciel ds. rozwoju produktu
- 2025-06-30 Środa Wielkopolska => Konsultant wewnętrzny SAP FI/CO <=
- 2025-06-30 Białystok => Programista Mainframe (z/OS, Assembler) <=
- 2025-06-30 Warszawa => International Freight Forwarder <=
- 2025-06-30 Bieruń => Spedytor Międzynarodowy (handel ładunkami/prowadzenie flo