abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 01:00 | Nová verze Ladislav Hagara | Komentářů: 0
    včera 19:55 | IT novinky

    Intel na veletrhu Computex 2024 představil (YouTube) mimo jiné procesory Lunar Lake a Xeon 6.

    Ladislav Hagara | Komentářů: 0
    včera 13:44 | IT novinky

    Na blogu Raspberry Pi byl představen Raspberry Pi AI Kit určený vlastníkům Raspberry Pi 5, kteří na něm chtějí experimentovat se světem neuronových sítí, umělé inteligence a strojového učení. Jedná se o spolupráci se společností Hailo. Cena AI Kitu je 70 dolarů.

    Ladislav Hagara | Komentářů: 0
    včera 13:22 | Nová verze

    Byla vydána nová verze 14.1 svobodného unixového operačního systému FreeBSD. Podrobný přehled novinek v poznámkách k vydání.

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

    Společnost Kaspersky vydala svůj bezplatný Virus Removal Tool (KVRT) také pro Linux.

    Ladislav Hagara | Komentářů: 3
    včera 12:33 | Nová verze

    Grafický editor dokumentů LyX, založený na TeXu, byl vydán ve verzi 2.4.0 shrnující změny za šest let vývoje. Novinky zahrnují podporu Unicode jako výchozí, export do ePub či DocBook 5 a velké množství vylepšení uživatelského rozhraní a prvků editoru samotného (např. rovnic, tabulek, citací).

    Fluttershy, yay! | Komentářů: 0
    včera 12:00 | Nová verze

    Byla vydána (𝕏) nová verze 7.0 LTS open source monitorovacího systému Zabbix (Wikipedie). Přehled novinek v oznámení na webu, v poznámkách k vydání a v aktualizované dokumentaci.

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

    Organizace Apache Software Foundation (ASF) vydala verzi 22 integrovaného vývojového prostředí a vývojové platformy napsané v Javě NetBeans (Wikipedie). Přehled novinek na GitHubu. Instalovat lze také ze Snapcraftu a Flathubu.

    Ladislav Hagara | Komentářů: 0
    3.6. 17:00 | IT novinky

    Společnost AMD na veletrhu Computex 2024 představila (YouTube) mimo jiné nové série procesorů pro desktopy AMD Ryzen 9000 a notebooky AMD Ryzen AI 300.

    Ladislav Hagara | Komentářů: 0
    3.6. 16:22 | Nová verze

    OpenCV (Open Source Computer Vision, Wikipedie), tj. open source multiplatformní knihovna pro zpracování obrazu a počítačové vidění, byla vydána ve verzi 4.10.0 . Přehled novinek v ChangeLogu. Vypíchnout lze Wayland backend pro Linux.

    Ladislav Hagara | Komentářů: 0
    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: 36 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Lepšie nedefinovať takto štruktúry v C.
    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.