-
Path: news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!2.eu.feeder.erj
e.net!feeder.erje.net!newsreader4.netcologne.de!news.netcologne.de!peer02.ams1!
peer.ams1.xlned.com!news.xlned.com!peer02.ams4!peer.am4.highwinds-media.com!new
s.highwinds-media.com!newsfeed.neostrada.pl!unt-exc-02.news.neostrada.pl!unt-sp
o-a-01.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail
From: "J.F" <j...@p...onet.pl>
Subject: Re: AVR po latach
Newsgroups: pl.misc.elektronika
User-Agent: 40tude_Dialog/2.0.15.1
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 8bit
References: <smreh5$3aj$1@dont-email.me>
<a...@n...neostrada.pl>
<sn3drv$13k$2@dont-email.me>
<a...@n...neostrada.pl>
<sn3h62$qna$1@dont-email.me>
<a...@n...neostrada.pl>
<sn3lbt$q5v$1@dont-email.me>
<0...@g...com>
<sn5ul0$2vi$1@dont-email.me> <2...@m...lan>
<sn602a$cil$1@dont-email.me> <20211118180102.29f911cc@mateusz>
<sn61hi$q5d$1@dont-email.me> <20211118182857.67ab36fc@mateusz>
<sn632k$7cr$1@dont-email.me> <20211118191941.5cd5cbc8@mateusz>
<sn66n0$2i0$1@dont-email.me> <20211118203536.2ed957df@mateusz>
<1eohq79peodw1.1sh0vipcxxlku$.dlg@40tude.net>
<20211119085719.54466a8e@mateusz> <sn7o55$3nb$1@dont-email.me>
Date: Fri, 19 Nov 2021 10:53:02 +0100
Message-ID: <1p1313ae4kxxs.1w6e1064h8fs0$.dlg@40tude.net>
Lines: 45
Organization: Telekomunikacja Polska
NNTP-Posting-Host: 83.30.109.51
X-Trace: 1637315580 unt-rea-a-01.news.neostrada.pl 522 83.30.109.51:58634
X-Complaints-To: a...@n...neostrada.pl
X-Received-Bytes: 2392
Xref: news-archive.icm.edu.pl pl.misc.elektronika:768517
[ ukryj nagłówki ]On Fri, 19 Nov 2021 09:44:17 +0100, heby wrote:
> On 19/11/2021 08:57, Mateusz Viste wrote:
>> poleglem:
>>
>> if (buf) zwolnij_bufor();
>> if (port) zamknij_port();
>> return(fail);
>
> Ten fragment kodu nie jest za darmo. Innymi słowy ideologię "da się na
> goto" dostałeś w bonusie z runtime checkiem.
>
> Samo życie ideologa C.
Niby owszem, ale mozna przeciez tez tak:
void *buf = NULL;
int port = 0;
buf = alokuj_bufor();
if (!buf) goto poleglem_buf;
if (!napisz_na_port() goto poleglem_write;
if (!odbierz_z_portu() goto poleglem_read;
return(sukces);
poleglem_read:
poleglem_write:
zamknij_port();
poleglem_buf:
zwolnij_bufor();
return(fail);
Popierasz, nie popierasz?
Fakt, ze to juz bliskie czystej strukturze na if-else.
Tylko ze czasem algorytm nie ma takiejs czystej struktury.
J.
Następne wpisy z tego wątku
- 19.11.21 10:59 Mateusz Viste
- 19.11.21 11:07 Mateusz Viste
- 19.11.21 11:34 Mateusz Viste
- 19.11.21 13:37 Astralny Rębajło
- 19.11.21 17:08 heby
- 19.11.21 20:38 Mateusz Viste
- 19.11.21 21:19 heby
- 19.11.21 21:54 Mateusz Viste
- 19.11.21 22:00 Marek
- 19.11.21 22:06 heby
- 19.11.21 22:11 heby
- 19.11.21 22:19 Dawid Rutkowski
- 19.11.21 22:54 Mateusz Viste
Najnowsze wątki z tej grupy
- jaki zasilacz laboratoryjny
- jaki zasilacz laboratoryjny
- Puszka w ziemię
- T-1000 was here
- Ściąganie hasła frezem
- Koszyk okrągły, walec 3x AA, na duże paluszki R6
- Brak bolca ochronnego ładowarki oznacza pożar
- AMS spalony szybkim zasilaczem USB
- stalowe bezpieczniki
- Wyświtlacz ramki cyfrowej
- bateria na żądanie
- pradnica krokowa
- Nieustający podziw...
- Coś dusi.
- akumulator napięcie 12.0v
Najnowsze wątki
- 2025-02-03 Awaria BNP Paribas
- 2025-02-03 kryminalni i dochodzeniowcy
- 2025-02-03 Szczecin => Senior Field Sales (system ERP) <=
- 2025-02-03 Bydgoszcz => Specjalista ds. Sprzedaży (transport drogowy) <=
- 2025-02-03 jaki zasilacz laboratoryjny
- 2025-02-03 jaki zasilacz laboratoryjny
- 2025-02-03 Puszka w ziemię
- 2025-02-03 Białystok => Full Stack web developer (obszar .Net Core, Angular6+) <
- 2025-02-03 Kraków => Programista Full Stack .Net <=
- 2025-02-03 Kraków => MS Dynamics 365BC/NAV Developer <=
- 2025-02-03 Bez żadnego trybu
- 2025-02-03 Gliwice => Business Development Manager - Network and Network Security
- 2025-02-03 Gliwice => IT Expert (Network Systems area) <=
- 2025-02-03 Lublin => Delphi Programmer <=
- 2025-02-03 Lublin => Programista Delphi <=