abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 16:33 | Zajímavý software

    Sniffnet je multiplatformní aplikace pro sledování internetového provozu. Ke stažení pro Windows, macOS i Linux. Jedná se o open source software. Zdrojové kódy v programovacím jazyce Rust jsou k dispozici na GitHubu. Vývoj je finančně podporován NLnet Foundation.

    Ladislav Hagara | Komentářů: 0
    dnes 12:33 | Nová verze

    Byl vydán Debian Installer Trixie RC 2, tj. druhá RC verze instalátoru Debianu 13 s kódovým názvem Trixie.

    Ladislav Hagara | Komentářů: 0
    dnes 03:33 | Komunita

    Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za červen (YouTube).

    Ladislav Hagara | Komentářů: 0
    dnes 02:33 | Nová verze

    Libreboot (Wikipedie) – svobodný firmware nahrazující proprietární BIOSy, distribuce Corebootu s pravidly pro proprietární bloby – byl vydán ve verzi 25.06 "Luminous Lemon". Přidána byla podpora desek Acer Q45T-AM a Dell Precision T1700 SFF a MT. Současně byl ve verzi 25.06 "Onerous Olive" vydán také Canoeboot, tj. fork Librebootu s ještě přísnějšími pravidly.

    Ladislav Hagara | Komentářů: 0
    dnes 01:33 | Komunita

    Licence GNU GPLv3 o víkendu oslavila 18 let. Oficiálně vyšla 29. června 2007. Při té příležitosti Richard E. Fontana a Bradley M. Kuhn restartovali, oživili a znovu spustili projekt Copyleft-Next s cílem prodiskutovat a navrhnout novou licenci.

    Ladislav Hagara | Komentářů: 0
    včera 16:55 | Nová verze

    Svobodný nemocniční informační systém GNU Health Hospital Information System (HIS) (Wikipedie) byl vydán ve verzi 5.0 (Mastodon).

    Ladislav Hagara | Komentářů: 0
    včera 16:22 | Komunita

    Open source mapová a navigační aplikace OsmAnd (OpenStreetMap Automated Navigation Directions, Wikipedie, GitHub) oslavila 15 let.

    Ladislav Hagara | Komentářů: 1
    včera 11:55 | Zajímavý software

    Vývojář Spytihněv, autor počítačové hry Hrot (Wikipedie, ProtonDB), pracuje na nové hře Brno Transit. Jedná se o příběhový psychologický horor o strojvedoucím v zácviku, uvězněném v nejzatuchlejším metru východně od všeho, na čem záleží. Vydání je plánováno na čtvrté čtvrtletí letošního roku.

    Ladislav Hagara | Komentářů: 38
    1.7. 18:22 | IT novinky

    V uplynulých dnech byla v depu Českých drah v Brně-Maloměřicích úspěšně dokončena zástavba speciální antény satelitního internetu Starlink od společnosti SpaceX do jednotky InterPanter 660 004 Českých drah. Zástavbu provedla Škoda Group. Cestující se s InterPanterem, vybaveným vysokorychlostním satelitním internetem, setkají například na linkách Svitava Brno – Česká Třebová – Praha nebo Moravan Brno – Břeclav – Přerov – Olomouc.

    Ladislav Hagara | Komentářů: 21
    1.7. 13:11 | Nová verze

    Byla vydána nová verze 8.7.0 správce sbírky fotografií digiKam (Wikipedie). Přehled novinek i s náhledy v oficiálním oznámení (NEWS). Nejnovější digiKam je ke stažení také jako balíček ve formátu AppImage. Stačí jej stáhnout, nastavit právo ke spuštění a spustit.

    Ladislav Hagara | Komentářů: 0
    Jaký je váš oblíbený skriptovací jazyk?
     (59%)
     (28%)
     (7%)
     (2%)
     (0%)
     (1%)
     (3%)
    Celkem 346 hlasů
     Komentářů: 16, poslední 8.6. 21:05
    Rozcestník

    Lepšie nedefinovať takto štruktúry v C.

    4.8.2020 21:46 | C

    #include <stdio.h>
    
    static struct {
    	int day;
    	int month;
    	int year;
    } date = {
    	4, 8, 2020
    };
    
    int main(){
    	printf("year: %d\n", date.year);
    	return 0;
    }
    
           

    Hodnocení: 11 %

            špatnédobré        

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    4.8.2020 22:22 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Lepšie nedefinovať takto štruktúry v C.

    Asi by měla následovat anketa, co tím autor vlastně myslel. :-)

    • nekombinovat deklaraci struktury jako typu s deklarací proměnné toho typu
    • nepoužívat anonymní initializátory prvků struktury
    • nepoužívat signed proměnné pro hodnoty, které jsou z definice unsigned
    • místo lidové tvořivosti používat existující knihovní datové typy
    5.8.2020 00:21 samalama
    Rozbalit Rozbalit vše Re: Lepšie nedefinovať takto štruktúry v C.
    ci problem nebude prave v tom, ze autor nemysli...
    5.8.2020 01:15 Žufánek
    Rozbalit Rozbalit vše Re: Lepšie nedefinovať takto štruktúry v C.
    nepoužívat signed proměnné pro hodnoty, které jsou z definice unsigned
    Tak tady to fakt hrozně vadí, přetečení iminentní.
    5.8.2020 08:02 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Lepšie nedefinovať takto štruktúry v C.
    Ono nemusí být iminentní. Schválně si zkuste bez hledání po webu nebo nahlédnutí do specifikace odpovědět, jak přesně se chová "X < Y" nebo "A ? X : Y", je-li X signed a Y unsigned nebo naopak, případně je-li to ještě zpestřeno různou velikostí těch proměnných. Podobně bohorovný přístup často končí bezpečnostními chybami.
    5.8.2020 23:47 xxx
    Rozbalit Rozbalit vše Re: Lepšie nedefinovať takto štruktúry v C.
    No nevim. Spis jsou to takova tri stadia.

    Programator:

    1. pouziva vsude int

    2. mixuje signed/unsigned int ruznych velikosti

    3. po mnoha chybach zpusobenych s/u int ruznych velikosti a nastudovani, jak to funguej, opet pouziva pouze int

    6.8.2020 07:39 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Lepšie nedefinovať takto štruktúry v C.
    Do fáze 3 se ale naštěstí nedostanou všichni.
    5.8.2020 09:13 z_sk | skóre: 34 | blog: analyzy
    Rozbalit Rozbalit vše Re: Lepšie nedefinovať takto štruktúry v C.
    nekombinovat deklaraci struktury jako typu s deklarací proměnné toho typu
    👍
    debian.plus@protonmail.com
    Gréta avatar 5.8.2020 12:57 Gréta | skóre: 37 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Lepšie nedefinovať takto štruktúry v C.

    všecko co se jako zkompiluje je správně :D :D ;D ;D

    Heron avatar 5.8.2020 20:02 Heron | skóre: 53 | blog: root_at_heron | Olomouc
    Rozbalit Rozbalit vše Re: Lepšie nedefinovať takto štruktúry v C.
    Mě nejvíc dráždí to, že jsou to inty a že je to inicializované přímo. Datum nejsou tři inty. Datum je složitější datová struktura a ne všechny hodnoty těchto tří polí tvoří validní datum. Ve skutečnosti drtivá většina hodnot není validní datum.
    5.8.2020 21:52 Martin Tůma | skóre: 39 | blog: RTFM | Praha
    Rozbalit Rozbalit vše Re: Lepšie nedefinovať takto štruktúry v C.

    A jak by sis jako v C představoval datovou strukturu, která by sama o sobě řešila validitu dat? Jako jednoduchá datová reprezentace datumu je to naprosto ok, pro "bezpečnou" práci s tou strukturou pak můžeš mít nadefinované funkce, které dělají potřebné kontroly.

    Co se týče té "přímé inicializace", tak tohle se v C zcela běžně záměrně používá, pokuď se definovaná struktura (běžně se spíš jedná o pole struktur) použije v daném modulu přesně 1x.

    Každý má právo na můj názor!
    5.8.2020 22:18 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Lepšie nedefinovať takto štruktúry v C.
    "Zcela běžně se používá" spousta věcí, které bych za hodné následování neoznačil ani omylem.
    5.8.2020 23:34 Martin Tůma | skóre: 39 | blog: RTFM | Praha
    Rozbalit Rozbalit vše Re: Lepšie nedefinovať takto štruktúry v C.
    Měl jsem na mysli "běžně používá v nějaké situaci". Přirovnal bych to k použití GOTO. To taky obecně není úplně doporučovaný pattern, ale jako error handling je to zcela běžná (a preferovaná) technika. Samozřejmě, někdo to může vidět jinak, ostatně stejně jako u toho GOTO...
    Každý má právo na můj názor!
    5.8.2020 22:47 Odin1918 | skóre: 6 | blog: Valhalla
    Rozbalit Rozbalit vše Re: Lepšie nedefinovať takto štruktúry v C.
    Nejlepsi by bylo vykaslat se na 50 let stary jazyk a pouzit treba neco objektoveho mladsi 30ti let. :-D

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.