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 w 2025? 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 20 maja 2025, o 07:47


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 4 ] 
    Autor Wiadomość
    PostNapisane: 15 mar 2020, o 14:18 
    Offline
    Użytkownik

    Dołączył(a): 13 mar 2013
    Posty: 123
    Pomógł: 1

    Witam
    Mam ECLIPSE 2019-12. W trakcie kompilacji programu, po lewej stronie pojawiają mi się takie śmieszne "pluskwiaki" . Wiem , iż teoretycznie służą one do podpowiedzi że coś zostało zrobione nieprawidłowo i po najechaniu na nie myszką powiadamiają nawet o co chodzi , ale czasem pisząc program celowo chcemy coś wykorzystać co może nie jest typowe, ale nie jest też błędem. Mój przykład:
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

    Po instrukcji 2 a przed statusem2 celowo nie dodaję polecenia break ponieważ status 1 i status 2 są w pewnej zależności między sobą i chodzi o to aby czasem wykonywać tylko instrukcję 3 ale czasem uzupełniać ją dodatkowo o wykonanie instrukcji 1 i 2.
    Z tego co czytałem w języku C dopuszczalna jest taka konstrukcja i przy braku break wykonują sie po prostu wszystkie instrukcje kolejno. Tymczasem kompilator ECLIPSE wstawia mi przy pozycji status2 pluskwę i wyświetla komunikat o braku kończącej instrukcji break. Kompilacja przechodzi prawidłowo, mam w konsoli 0 errors i 0 warnings, ale "pluskwy" siedzą jak bolące zęby. Czy można jakoś poinformować kompilator ,że takie jest moje zamierzenie, czy zastosować jedyny sposób na karaluchy, czyli polubić ?



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 15 mar 2020, o 14:45 
    Offline
    Moderator
    Avatar użytkownika

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

    MisterWhite napisał(a):
    Tymczasem kompilator ECLIPSE wstawia mi przy pozycji status2 pluskwę i wyświetla komunikat o braku kończącej instrukcji break.

    Nie ma czegoś takiego jak "kompilator ECLIPSE". Kompilator to masz tylko jeden AVR GCC (Atmel Toolchain) i jak widzisz on nie daje warnigów bo to jest dopuszczalne.

    Te pchełki to system ostrzeżeń od środowiska IDE ECLIPSE a nie kompilatora. I masz tam rozbudowany system sterowania tymi pchełkami - możesz jeśli chcesz sobie wyłączyć je akurat dla takiej sytuacji. Upierdliwe jest to że trzeba to niestety robić dla każdego Workspace a nie raz dla całego Eclipse - więc mało opłacalne.

    Więc albo się nie przejmować tymi pchełkami albo jednak znaleźć nieco inną formę zapisu tego w kodzie.

    _________________
    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: 15 mar 2020, o 15:02 
    Offline
    Użytkownik

    Dołączył(a): 09 lip 2019
    Posty: 117
    Pomógł: 12

    MisterWhite napisał(a):
    Witam
    Mam ECLIPSE 2019-12. W trakcie kompilacji programu, po lewej stronie pojawiają mi się takie śmieszne "pluskwiaki" .
    [...]
    Czy można jakoś poinformować kompilator ,że takie jest moje zamierzenie, czy zastosować jedyny sposób na karaluchy, czyli polubić ?


    I bardzo dobrze, że pokazuje, bo to jest bardzo częste źródło błędów.
    Jeśli jednak chcemy rzeczywiście zaprogramować coś bez tego break, to dobrą praktyką jest dodatnie komentarza w takim przypadku, żeby kolejna osoba, która zajrzy w kod nie wpakowała się na minę.
    Myśmy używali w takich przypadkach po prostu komentarza //intentionally,
    ale Eclipse sugeruje domyślnie /*no break*/
    np.
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

    Jak klikniesz w tą "pchełkę" to zresztą Eclipse Ci zasugeruje działania i może nawet sam dodać stosowny komentarz.
    Obrazek

    Na jaki komentarz ma reagować analiza statyczna kodu - można zmienić w ustawieniach.
    Window -> Preferences -> C/C++ -> Code Analysis
    Obrazek
    W tym okienku można też ustawić w jaki sposób ma reagować analiza statyczna kodu na inne przypadki.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 15 mar 2020, o 15:17 
    Offline
    Użytkownik

    Dołączył(a): 13 mar 2013
    Posty: 123
    Pomógł: 1

    Wielkie dzięki za wszelkie wyczerpujące wskazówki.
    Pozdrawiam
    W



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

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