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



Teraz jest 6 sty 2025, o 12:31


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 9 ] 
Autor Wiadomość
PostNapisane: 10 sie 2014, o 15:19 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 04 cze 2014
Posty: 855
Lokalizacja: pod Warszawą
Pomógł: 58

witam Kolegów

zatrzymałem się przed problemem, którego nie mogę zrozumieć i rozwiązać
w kodzie jak niżej mam warunek "if"
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


kompilator krzyczy następującym błędem:

./main.c: In function 'main':
../main.c:161: error: lvalue required as left operand of assignment
../main.c:161: warning: left-hand operand of comma expression has no effect
make: *** [main.o] Error 1

no i nie wiem o co chodzi bo w kodzie używam kilkakrotnie operatora "&&" i kompilacja przechodzi normalnie
w trakcie pisania nie mam warningów i podkreśleń - dopiero po kompilacji :( :( :(

pozdrawiam Marek

_________________
Pomóżcie mi stanąć na nogi



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 10 sie 2014, o 15:25 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 22 lip 2013
Posty: 420
Lokalizacja: Kraków
Pomógł: 17

mógłbyś wkleić więcej kodu? (tzn definicje: WRZUTNIK_OFF i SENSOR_10_OFF)

_________________
GreenBook i BlueBook



Ostatnio edytowano 10 sie 2014, o 15:30 przez programek, łącznie edytowano 4 razy

Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 10 sie 2014, o 15:26 
Offline
Użytkownik

Dołączył(a): 20 wrz 2013
Posty: 647
Zbananowany użytkownik

Pomógł: 101

Pokaż tę linię nr 161

_________________
+++++[>++++<-]>[>++++++<-]>.---------.+++.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 10 sie 2014, o 15:29 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 sie 2013
Posty: 3797
Lokalizacja: Grudziądz
Pomógł: 143

Przecie ten warunek jest we while a if po za petla

_________________
Usługi druku przestrzennego - www.drumik.pl



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 10 sie 2014, o 15:44 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 04 cze 2014
Posty: 855
Lokalizacja: pod Warszawą
Pomógł: 58

Majster
ta pętla to działa sobie tylko w pewnych uwarunkowaniach, a "if" jest poza nią bo odnosi się do innych rzeczy
wcześniej jest pętla "while(1)

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

_________________
Pomóżcie mi stanąć na nogi



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 10 sie 2014, o 16:05 
Offline
Użytkownik

Dołączył(a): 20 wrz 2013
Posty: 647
Zbananowany użytkownik

Pomógł: 101

Błąd jest oczywiście spowodowany iloczynem logicznym na dwóch instrukcjach przypisania (zakładam, że if jest właśnie tą tajemniczą linią 161 z komunikatu kompilatora) . I już mniejsza, że jest tam jeszcze operator przecinkowy. Otocz WRZUTNIK_OFF i SENSOR_10_OFF nawiasami a błąd zniknie. Ale....warunek nadal nie będzie miał sensu - będzie zawsze spełniony i jako całkowicie niepotrzebny zostanie całkowicie wycięty przez kompilator.

_________________
+++++[>++++<-]>[>++++++<-]>.---------.+++.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 10 sie 2014, o 16:09 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 04 cze 2014
Posty: 855
Lokalizacja: pod Warszawą
Pomógł: 58

dlaczego będzie wycięty?
przecież może zaistnieć sytuacja, że będzie spełniony

_________________
Pomóżcie mi stanąć na nogi



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 10 sie 2014, o 16:32 
Offline
Użytkownik

Dołączył(a): 20 wrz 2013
Posty: 647
Zbananowany użytkownik

Pomógł: 101

No tak, tu mnie poniosło, nie zostanie wycięty, jednak wynik będzie dosyć przypadkowy. Mianowicie WRZUTNIK_OFF będzie zawsze spełniony, natomiast SENSOR_10_OFF będzie spełniony jeżeli na ktorymkolwiek pinie portu B innym niż pin 3 będzie stan 1, a nie będzie spełniony jeżeli na każdym pinie tego portu będzie stan 0. No w każdym razie wynik nie będzie w ogóle zależeć od PB3. Chyba nie o to chodzi?

_________________
+++++[>++++<-]>[>++++++<-]>.---------.+++.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 10 sie 2014, o 16:48 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 sie 2013
Posty: 3797
Lokalizacja: Grudziądz
Pomógł: 143

mczarny napisał(a):
Majster
ta pętla to działa sobie tylko w pewnych uwarunkowaniach, a "if" jest poza nią bo odnosi się do innych rzeczy
wcześniej jest pętla "while(1)

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




Kolego z fusów nie wróżę w 1wszym poście dajesz fragment kodu i widzę pętlę while a poza nią warunek if... powiedz mi skąd mam wiedzieć co jest przed skoro nie widzę ?

Definicje powinny wyglądać mniej więcej tak a nie jak u ciebie z przecinkami no powiedz co to jest

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


Powinno być tak:

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






następnie dajesz definicje ale co dalej skoro one mają już babole?

Jeżeli chcesz by ktoś ci pomógł podaj cały kod bo w ten sposób co teraz to mogę zgadywać w nieskończoność

widzę też że te twoje definicje są że tak powiem do luftu ... chodź by ten przecinek ,


BTW nie lepiej 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 jak widzisz dalej zgaduję bo nie widzę całego kodu choćby main.c

_________________
Usługi druku przestrzennego - www.drumik.pl



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: 9 ] 

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