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

KURS HOME ASSISTANT

Chcesz zautomatyzować swój dom bez skomplikowanego kodowania?
Zastanawiasz się nad wyborem sprzętu, oprogramowania i aplikacji?
Od czego zacząć przygodę z HA? Co będzie najlepsze na start?

Nasz kurs Home Assistant nauczy Cię krok po kroku, jak łatwo zautomatyzować swój dom i oszczędzić na rachunkach za prąd i ogrzewanie. Bez chmur, bez zbędnych abonamentów. Twoja przygoda z Home Assistant zaczyna się tutaj!

↓↓↓

    Szanujemy Twoją prywatność. Możesz wypisać się w dowolnym momencie.




    Teraz jest 10 lip 2025, o 02:40


    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 0 gości


    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:  
    cron
    Sitemap
    Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
    phpBB SEO