-
Path: news-archive.icm.edu.pl!news.icm.edu.pl!news.chmurka.net!.POSTED.213.192.88.238
!not-for-mail
From: Piotr Gałka <p...@c...pl>
Newsgroups: pl.misc.elektronika
Subject: Re: programowanie w C - bardzo ogólne pytanie o filozofię. Arduino w roli
programatora pralki
Date: Tue, 24 Oct 2017 14:07:11 +0200
Organization: news.chmurka.net
Message-ID: <osnadd$rjo$1$PiotrGalka@news.chmurka.net>
References: <osllnb$psp$1@dont-email.me> <59eeec44$0$653$65785112@news.neostrada.pl>
<osmsrd$mk1$1$PiotrGalka@news.chmurka.net>
<osn8vc$k4r$1@node1.news.atman.pl>
NNTP-Posting-Host: 213.192.88.238
Mime-Version: 1.0
Content-Type: text/plain; charset=iso-8859-2; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Date: Tue, 24 Oct 2017 12:07:09 +0000 (UTC)
Injection-Info: news.chmurka.net; posting-account="PiotrGalka";
posting-host="213.192.88.238"; logging-data="28280";
mail-complaints-to="abuse-news.(at).chmurka.net"
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:52.0) Gecko/20100101
Thunderbird/52.4.0
In-Reply-To: <osn8vc$k4r$1@node1.news.atman.pl>
Content-Language: pl
Xref: news-archive.icm.edu.pl pl.misc.elektronika:725253
[ ukryj nagłówki ]W dniu 2017-10-24 o 13:42, Piotr Wyderski pisze:
>
> A mnie się zdarza stosunkowo często, choć przypadki użycia są jedynie dwa:
>
> 1. Opuszczanie wielokrotnie zagnieżdżonych pętli.
> 2. Przekazywanie sterowania do wspólnego kodu obsługi błędu dla danej
> sytuacji:
>
> if (dobrze) {
>
> // to dobrze
> } else {
>
> lbl_zle:
>
> // bardzo zle
> }
>
> if (albo_jednak_zle) {
>
> goto lbl_zle;
> }
Taka konstrukcja z cofaniem się w kodzie jest dla mnie trudna.
Nie rozumiem czy zakładasz, że albo_jednak_zle może być true po
wykonaniu bloku dobrze, czy else.
Jak po else to znaczyło by, że kod //bardzo zle nie gwarantuje, że
albo_jednak_zle będzie false - czyli może się zapętlić.
A jak po dobrze to by znaczyło, że warunek dobrze nie jest 100% pewny.
Kiedyś dawno błędy zawsze obsługiwałem tak, że wszystkie funkcje
zwracały int i każda wyższa reagowała na to, co zwraca niższa jak
umiała, a jak nie to przekazywała błąd wyżej (czasem nadając mu już inny
numer). Nigdy nie obsługiwałem błędów danej funkcji w niej samej.
Od jakiegoś czasu staram się używać try{throw;}catch bo nie trzeba
myśleć o przekazywaniu wyżej błędów przychodzących z dołu.
> Dokładnie o to chodzi. Goto potrafi znacznie *podnieść* czytelność,
Możesz mieć rację, ale nie będę używał goto, bo tak (tu tupnięcie nogą) :)
P.G.
Następne wpisy z tego wątku
- 24.10.17 14:07 Piotr Wyderski
- 24.10.17 14:12 Piotr Gałka
- 24.10.17 14:17 Piotr Gałka
- 24.10.17 14:27 Piotr Wyderski
- 24.10.17 14:36 Piotr Wyderski
- 24.10.17 14:58 J.F.
- 24.10.17 15:05 Piotr Wyderski
- 24.10.17 17:36 Janusz
- 24.10.17 20:31 Piotr Gałka
- 24.10.17 20:53 Janusz
- 24.10.17 22:33 Grzegorz Niemirowski
- 25.10.17 02:28 Mateusz Viste
- 25.10.17 09:51 Piotr Wyderski
- 29.10.17 20:42 slawek
- 29.10.17 20:48 slawek
Najnowsze wątki z tej grupy
- Współczesny falomierz
- Zasilacz 7V na szynę DIN
- Waga z legalizacją
- Wietnam wykłada 500M$ i chce zbudować fabrykę za 50G$
- Pendrive zdycha, czy coś jeszcze innego? Problem z plikami.
- Odkurzacz Smapp Dynamic - dawny Zelmer
- Nagra IV i zewnętrzny pilot
- Fejk muzyczny czy nie fejk
- Raspberry Pi 3 Model B+
- Kuchenka elektryczna
- test
- Cewka elektrozaworu
- zapytanie o chip r5f21275nfp
- nie naprawiam więcej telewizorów
- Zrobił TV OLED z TV LCD
Najnowsze wątki
- 2025-03-28 A gdyby to był elektryk?
- 2025-03-28 Współczesny falomierz
- 2025-03-28 Rzeszów => WEBCON Developer <=
- 2025-03-28 Szczecin => Specjalista ds. public relations <=
- 2025-03-28 Warszawa => Staż w dziale Sprzedaży B2B <=
- 2025-03-28 Warszawa => MENA New Business Manager <=
- 2025-03-28 Środa Wielkopolska => SAP FI/CO Internal Consultant <=
- 2025-03-28 Białystok => Generative AI Engineer <=
- 2025-03-28 China-Kraków => Key Account Manager IT <=
- 2025-03-28 Warszawa => SQL Developer <=
- 2025-03-28 Gliwice => Ekspert IT (obszar systemów sieciowych) <=
- 2025-03-28 Gliwice => IT Expert (Network Systems area) <=
- 2025-03-28 Warszawa => International Freight Forwarder <=
- 2025-03-28 Ostrów Wielkopolski => Konsultant Wdrożeniowy Comarch XL/Optima (Ksi
- 2025-03-28 Częstochowa => Manager ds. produktu <=