eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikaAVR po latachRe: AVR po latach
  • Data: 2021-11-19 10:53:02
    Temat: Re: AVR po latach
    Od: "J.F" <j...@p...onet.pl> szukaj wiadomości tego autora
    [ pokaż wszystkie 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.







Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: