A ja tam jeszcze poględzę
mirekk36 napisał(a):
jeśli sam tworzę strukturę i to z myślą właśnie o tym aby później móc się po niej poruszać wskaźnikiem - to co za problem ?
Ok. W chwili tworzenia programu nie ma problemu, ale za jakiś czas założenia mogą się zmienić i nagle się okaże, że strukturę trzeba przerobić. Sam w poradnikach wskazywałeś na fajne rozwiązania, które ułatwiają wykonywanie zmian w programie - dlaczego więc tutaj odbierać sobie tą przyjemność?
mirekk36 napisał(a):
wy tak opowiadacie - jakby za programowanie miałby się brać tylko ktoś, kto w ogóle nie wie co robi
Niet. Chodzi mi tylko o to, że stosując "tradycyjne" rozwiązania da się ominąć skakanie gołym wskaźnikiem po elementach struktury, które uważam za, tak jak napisał kolega
xor "dirty trick". Sam zwracasz uwagę na to, jakie mechanizmy dostarcza nam język wysokiego poziomu, np. że nie musimy się przejmować adresami zmiennych w eepromie. Tutaj natomiast z premedytacją pozbawiamy się ochrony, jaką daje nam mechanizm działania struktury.
mirekk36 napisał(a):
wadą gdy się nie do końca zdaje sobie sprawy ze wskaźników
Wydaje mi się, że można sobie doskonale radzić ze wskaźnikami i mieć je w małym... AtTiny; a i tak strzelić sobie w stopę takim kodem. Korzystając ze struktury "klasycznie" nie musimy się martwić generalnie o nic. Natomiast wersja z wskaźnikiem może się zemścić przykładowo jeśli jakiś fajny kawałek kodu z AVR wykorzystamy na innej architekturze *
* - wiem wiem, to dział o programowaniu uK AVR. Ale przypuszczam, że znajdzie się kilka osób, które programują również i inne procki w oparciu o tą wiedzę. Zresztą Mirek nieraz wspominał, że nie uczy programować AVR'ów, tylko przekazuje wiedzę "inter-architekturalną" na temat technik programowania
mirekk36 napisał(a):
czy uważasz że jest na to TYLKO JEDNO JEDYNE SŁUSZNE rozwiązanie ?
Nie! Ale, wydaje mi się, że trzeba zastrzec jakie, każde z rozwiązań, ma wady i zalety.
mirekk36 napisał(a):
wskaźniki to nie czarna magia - to po prostu obszar RAM i nie ważne czy w postaci struktury czy tablicy czy zmiennych luzem - po prostu można się do tego odnosić dzięki wskaźnikom
Tablica zajmuje ciągły obszar pamięci, więc już jest różnica. Jasne, że wskaźniki to nie czarna magia itd. Ale MOIM zdaniem, jeżeli już stosujemy strukturę, to nie warto się obdzierać z mechanizmów jakie ona dostarcza. Tak jak wspomniał kolega
xor plusów za bardzo nie widać. Broń Boże nie mówię, że to nie będzie działać (jak się dobrze zrobi), że jest to totalnie zabronione, złe fuj i fusebity się od tego zablokują. Chodzi mi tylko o to, że każde rozwiązanie z lataniem wskaźnikami po strukturze da się zrobić inaczej, bezpieczniej, "przenośniej" itd. Przynajmniej aktualnie nie widzę opcji, która bezwzględnie wymagałaby użycia wskaźników... ale mam w pokoju 28* więc wielu rzeczy mogę nie dostrzegać