Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 15 lis 2024, o 21:21


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 7 ] 
Autor Wiadomość
PostNapisane: 13 gru 2020, o 22:32 
Offline
Nowy

Dołączył(a): 01 lis 2015
Posty: 13
Pomógł: 0

Cześć!
Przy okazji Orangebook wracam do starej przygody z przed lat - mikrokontrolery :)
Ponieważ o dłuższego czasu rzeźbię w Pythonie mam teraz sporo kłopotów, żeby przestawić się na C.
I mam teraz do Was szanowni koledzy prośbę o podpowiedź - wymyśliłem sobie zadanie, w którym cyklicznie chciałbym zmieniać wartość zmiennej inną zmienną. Mam taki zapis (wartości wymyślone):
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Wymyśliłem sobie, że w pewnym momencie w moim programie za pomocą pętli for będę zwracał wartość kolejnej zmiennej Cy1 potem Cy2 itd itd aż do Cy9.

Pierwsza próba wyglądała tak:

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Ale to kompletna bzdura przecież... Nie o to mi chodzi. W pythonie można to fajnie zrobić np. konkatenacją stringów. Tutaj też tak próbowałem aby w pętli iterować po i, a później w jakiś sposób skleić Cy z aktualną wartością i. Też nie wyszło. Nie mam pomysłu jak to ugryźć w C, a że nie umiem znaleźć tego w internetach to pozwoliłem sobie zadać tutaj pytanie. Proszę uprzejmie, żebyście mnie naprowadzili jak podejść do takiego zagadnienia.
Zastanawiam się żeby skorzystać np. z enum, ale nurtuje mnie czy można to ugryźć za pomocą for.

Pozdrawiam
TM



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 13 gru 2020, o 22:57 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27308
Lokalizacja: Szczecin
Pomógł: 1041

No ale mieszasz może pojęcia i może sporo zapomniałeś z języka C - dlatego trzeba wrócić do podstaw niestety.

Po pierwsze to pokazałeś jakiś przykład kodu i sam napisałeś że to bzdura - że w pythonie coś ci tam łatwiej zrobić i nagle że łatwiej tam sklejać jakieś Cy z i . Panie kochany zapomnij o podejściu do zmiennych z pythona bo jest CAAAAŁKOWICIE INNE, już nie wspomnę o tym że ty tu chcesz aż otrzymać w taki sposób konkatenację stringów myśląc o zmiennych typu int/uint. Zapomnij o tym na zawsze w C a szczególnie o jakichś automatycznych działaniach na stringach jako klasie/obiekcie co możliwe jest dopiero w C++ i wyższych językach.

Czy tego chcesz czy nie - musisz sobie przypomnieć typy zmiennych w C i jak się na nich operuje bo schodząc bezpośrednio z pythona w dół do C ... bez poczytania o podstawach C będziesz miał ciągle schody pod górę i same problemy.

Poza tym jeśli chcesz żeby cię jakoś naprowadzić jak zabrać się za to w C to pokaż albo opisz jakiś prosty konkretny przykład ale posłuż że się kodem źródłowym nawet w pythonie i swojej próbie w C - co chcesz uzyskać - to wtedy można będzie wskazać ci chociaż jakąś drogę

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 13 gru 2020, o 23:17 
Offline
Nowy

Dołączył(a): 01 lis 2015
Posty: 13
Pomógł: 0

Tak, jak najbardziej mam świadomość różnych typów zmiennych. Mogłem to wyżej zaznaczyć.
Dziękuję za komentarz. Znalazłem rozwiązanie. Fakt, że trochę inaczej niż planowałem, ale uzyskałem zakładany efekt. Przepraszam za kłopot.
Temat do zamknięcia.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 gru 2020, o 08:06 
Offline
Użytkownik

Dołączył(a): 25 lip 2013
Posty: 2583
Pomógł: 128

To napisz jak to rozwiązałeś. Będzie dla potomnych.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 gru 2020, o 09:00 
Offline
Nowy

Dołączył(a): 01 lis 2015
Posty: 13
Pomógł: 0

Skorzystałem z tablic. Pozwoliło to na szybko powiązać indeks tablicy z wartością iterowaną. Słabe, ale na szybko (i tymczasowo) załatwiło sprawę.

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

PS. Powiem Wam, że człowiek raptem 3 lata nie korzysta z C i mnóstwo wiedzy ucieka. Dramat. Najpierw zapisałem pętlę w postaci:
Składnia: [ Pobierz ] [ Ukryj ]
język python
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

I dlaczego to nie działa... :lol: Nie wiedziałem jak LED wysterować nawet. Otworzyłem stary kod - matko... o co tutaj chodzi :lol: Ale bluebook już pod ręką i czytam od początku, nawet te najbardziej trywialne sprawy bo zdecydowanie trzeba wszystko gruntownie odkurzyć.

Życzę wszystkim miłego dnia :)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 gru 2020, o 10:35 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27308
Lokalizacja: Szczecin
Pomógł: 1041

hehehe no składnia pythona jest rozbrajająco prosta .... więc można się walnąć wracając do C ;) .... ja mam tak samo jak dłużej nie działam w swoim Delphi - to też - na początku pomijam dwukropki przez znakiem = ;) i ciągle zaskoczenie dlaczego błąd kompilacji ... a jak dłużej podziałam w Delophi to odwrotnie - dwukropki walę w C i znowu błędy ;)

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 gru 2020, o 14:53 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 29 sty 2015
Posty: 187
Pomógł: 10

W nowoczesnym C++ 11 lub wyżej też jest dostępna zakresowa pętla for i swego rodzaju Duck Typing, tak jak ma to miejsce w języku Python. Kwestia kompilatora dla Embedded.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 7 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 1 gość


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO