-
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
- Stare filmy o technice
- Zasilanie własnych konstrukcji przez PoE
- Jak działa domofon?
- Co oni mierzą miernikiem
- 40 lat OrCAD-a
- Multimetr z bluetooth
- Ciekawa mapka z BTS-ami
- Lampy uliczne LED z kubkiem
- Pęczniejące LiPo
- wyłącznik ścienny
- "Wybitna" inteligencja AI
- test stereo
- Bluetooth stereo
- W USA budują pierwszą komercyjną elektrownię fuzji jądrowej
- Weryfikacja myjki ultradźwiękowej
Najnowsze wątki
- 2025-10-17 "Przypadkowo wylosowany" sędzia odmówił ekstradycji Niemcom za NordStream
- 2025-10-17 Stare filmy o technice
- 2025-10-17 Warszawa => Starszy Konsultant SAP - obszar PP <=
- 2025-10-17 Warszawa => Java Full Stack Developer <=
- 2025-10-17 Warszawa => Konsultant Wiodący SAP PP <=
- 2025-10-17 Warszawa => Key Account Manager (Usługi HR) <=
- 2025-10-17 Ostrów Wielkopolski => Specjalista ds. Marketingu Online (PPC) <=
- 2025-10-17 Gdańsk => Konsultant ds. Wdrożeń ERP (moduł FK) <=
- 2025-10-17 Lublin => Programista Delphi <=
- 2025-10-16 Warszawa => Senior Algorithm Developer (Java/Kotlin) <=
- 2025-10-16 Poznań => SAP HCR Consultant <=
- 2025-10-16 Warszawa => Junior Rekruter <=
- 2025-10-15 Z podwórka Roberta:(
- 2025-10-15 BNP Paribas likwiduje rachunki GOoptima
- 2025-10-15 "[...] w Łodzi kot Krzyś otrzymał zakaz przebywania w budynku [prokuratury - przyp. JMJ] [...] zwierzę podrapało jedną z prokuratorek."