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í
×
    včera 18:44 | IT novinky

    Vojenské zpravodajství (VZ) se v březnu zapojilo do mezinárodní operace proti aktivitám hackerské skupiny APT28, která je spojovaná s ruskou vojenskou zpravodajskou službou GRU a která přes slabě zabezpečené routery prováděla kybernetické útoky na státní a další organizace v ČR i zahraničí. Operaci vedl americký Federální úřad pro vyšetřování (FBI) a jejím cílem bylo odebrat útočníkům přístup k napadeným zařízením a ty následně … více »

    Ladislav Hagara | Komentářů: 3
    včera 16:44 | IT novinky

    Tvůrcem nejpopulárnější kryptoměny bitcoin, který se skrývá za pseudonymem Satoši Nakamoto (Satoshi Nakamoto), je britský kryptograf Adam Back. Na základě vlastní investigativní práce to tvrdí americký deník The New York Times (NYT). Několik indicií podle autorů jasně ukazuje na to, že Back a Nakamoto jsou stejný člověk. Jde mimo jiné o podobný odborný a osobnostní profil či totožné chyby a manýry v psaném projevu.

    Ladislav Hagara | Komentářů: 6
    včera 14:44 | Nová verze

    Google Chrome 147 byl prohlášen za stabilní. Nejnovější stabilní verze 147.0.7727.55 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Vylepšeny byly také nástroje pro vývojáře. Přehled novinek v Chrome DevTools 145 až 147 také na YouTube.

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

    Vývojáři z Laboratoří CZ.NIC vydali nové verze aplikací Datovka (Datovka 4.29.0, Mobilní Datovka 2.6.2). V případě desktopové verze přibyly možnosti projít všechny uložené zprávy, zkontrolovat časy expirací časových razítek a přerazítkovat datové zprávy, které lze v ISDS přerazítkovat. Novinkou je také možnost vytahovat myší ze seznamu ZFO soubory datových zpráv, tento úkon jde udělat i pomocí tlačítek Ctrl+C. Nová verze Mobilní Datovky přináší jen drobné úpravy.

    VSladek | Komentářů: 0
    7.4. 21:55 | Nová verze

    MicroPython (Wikipedie), tj. implementace Pythonu 3 optimalizovaná pro jednočipové počítače, byl vydán ve verzi 1.28.0. Z novinek lze vypíchnout novou třídu machine.CAN.

    Ladislav Hagara | Komentářů: 0
    7.4. 10:22 | Komunita

    Michael Meeks, CEO společnosti Collabora, na apríla oznámil, nebyl to ale apríl, že nadace The Document Foundation zastřešující vývoj kancelářského balíku LibreOffice vyloučila ze svých řad všechny zaměstnance a partnery společnosti Collabora, tj. více než třicet lidí, kteří po mnoho let přispívali do LibreOffice. Nadace The Document Foundation po několika dnech publikovala oficiální vyjádření. Přiznává pochybení při zakládání

    … více »
    Ladislav Hagara | Komentářů: 9
    6.4. 05:33 | Pozvánky

    Protože je už po aprílu, můžou strahováci opět zveřejnit program další Virtuální Bastlírny, aniž by připravená témata působila dojmem, že jde o žert. Vězte tedy, že v úterý 14. dubna (změna!!!) od 20:00 proběhne VB, kde se setkají bastlíři, technici, učitelé i nadšenci do techniky a kde i vy se můžete zapojit do družného hovoru, jako by všichni seděli u pomyslného piva. Co mají bastlíři tento měsíc na srdci? Pravděpodobně by nás musel zasáhnout

    … více »
    bkralik | Komentářů: 3
    5.4. 23:33 | Nová verze

    Byla vydána verze 26.1 aneb čtvrtletní aktualizace open source počítačového planetária Stellarium (Wikipedie, GitHub). Vyzkoušet lze webovou verzi Stellaria na Stellarium Web.

    Ladislav Hagara | Komentářů: 1
    5.4. 23:00 | Zajímavý projekt

    VOID (Video Object and Interaction Deletion) je nový open-source VLM model pro editaci videa, který dokáže z videí odstraňovat objekty včetně všech jejich fyzikálních interakcí v rámci scény (pády, kolize, stíny...) pomocí quadmaskingu (čtyřhodnotová maska, která člení pixely scény do čtyř kategorií: objekt určený k odstranění, překrývající se oblasti, objektem ovlivněné oblasti a pozadí scény) a dvoufázového inpaintingu. Za projektem stojí výzkumníci ze společnosti Netflix.

    NUKE GAZA! 🎆 | Komentářů: 8
    5.4. 05:22 | Zajímavý software

    Design (GitHub) je 2D CAD pro GNOME. Instalovat lze i z Flathubu. Běží také ve webovém prohlížeči.

    Ladislav Hagara | Komentářů: 20
    Které desktopové prostředí na Linuxu používáte?
     (14%)
     (7%)
     (1%)
     (12%)
     (30%)
     (3%)
     (6%)
     (1%)
     (14%)
     (24%)
    Celkem 1245 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník

    Dotaz: C++ endian

    19.4.2011 22:45 martin
    C++ endian
    Přečteno: 455×
    Nazdar,

    dnes som sa zacal zaoberat s big endian a little endian. Opisal som program z knihy Profesionalne Linux programovani aplikaci a po skompilovani som dospel k tomu ze mam big endian. To by bolo aj fajn ked ako vystup mi hodilo toto:

    0xdeadbeef

    [0] = 0xffffffef [1] = 0xffffffbe [2] = 0xffffffad [3] = 0xffffffde

    Prikladam zdrojovy kod.

    Podla big endian by mal byt vystup skor [0] = 0xffffffde [1] = 0xffffffad [2] = 0xffffffbe [3] = 0xffffffef

    Viete mi niekto vysvetlit kde moze byt chyba? Alebo som ja zle pochopil endian ?

    Dakujem :)

    Řešení dotazu:


    Odpovědi

    19.4.2011 23:02 ghost
    Rozbalit Rozbalit vše Re: C++ endian
    "dospel k tomu ze mam big endian" Jak? Mas nejaky "exoticky" hw? Protoze treba procesory kompatibilni s Intel x86 jsou (aspon co je mi znamo) prave LE.
    19.4.2011 23:08 martin
    Rozbalit Rozbalit vše Re: C++ endian
    Konkretne mam CPU E8400 co je 64-bit. A tym padol by mal byt big endian. Lenze mne program vypisal vystup, ktory zodpoveda little endian. Preco ? :D
    19.4.2011 23:11 ghost
    Rozbalit Rozbalit vše Re: C++ endian
    rekl bych, ze problem je v samotne detekci. Ty mas: int little_endian(){ int endian = 1; return (0==((char*)&endian)); } A podle mne by melo byt: int little_endian(){ int endian = 1; return (0==(*(char*)&endian)); }
    19.4.2011 23:19 ghost
    Rozbalit Rozbalit vše Re: C++ endian
    1.Omlouvam se za formatovani.
    2.Snad me vetsi znalci C/C++ neukamenuji. Porovnani ((char*)&endian)) == 0 je spatne, protoze ty porovnavas int (hodnotu) s ukazatelem na char. Aby to bylo spravne, tak jej musis dereferencovat: (*(char*)&endian)) == 0
    20.4.2011 11:55 Sten
    Rozbalit Rozbalit vše Re: C++ endian
    Core 2 je x86-64, což je architektura založená na x86 a to je little endian. Bitovost procesoru nemá s endianitou nic společného.
    19.4.2011 23:16 martin
    Rozbalit Rozbalit vše Re: C++ endian
    Ahah, mas pravdu mam tam chybu ma to tak byt ako si napisal. No po skompilovani stale to iste, nic sa nezmenilo.
    19.4.2011 23:22 ghost
    Rozbalit Rozbalit vše Re: C++ endian
    musis ted porovnavat s 1, ptz jestli je LE, tak 1 bude prave na zacatku
    20.4.2011 00:45 Sten
    Rozbalit Rozbalit vše Re: C++ endian
    Nejjednodušší způsob, jak otestovat endianitu na Linuxu (pokud nechcete používat to makro):
    #include <arpa/inet.h>
    
    bool bigEndian = htons(0x1234) == 0x1234;
    Funkce htons převádí endianitu z místní na síťovou a síťová endianita je velká. Takže pokud je po převodu číslo nezměněné, počítá stroj ve velkém endiánu.

    Co se týče vašeho zdrojáku, má to být takto:
    return 1 ==(*reinterpret_cast<char*>(&endian));
    Když tam máte 0, testujete big endian, ne little endian (na little endian bude nejméně významný bajt první, což je ten, který obsahuje tu jedničku).

    Po přetypování to musíte dereferencovat (operátorem *), jinak porovnáváte ukazatel, ne hodnotu (a ten ukazatel nikdy nebude nullptr).

    A je to C++, tak raději používejte přetypování z C++.
    20.4.2011 17:15 ghost
    Rozbalit Rozbalit vše Re: C++ endian
    A je to C++, tak raději používejte přetypování z C++.
    V C/C++ nedelam, muzete mi osvetlit v cem se to ve vysledku lisi? Resp. proc je to vyhodnejsi? Jen co do cistoty kodu, ci to ma i jiny vyznam? Diky
    clayman avatar 20.4.2011 17:49 clayman | skóre: 13 | Praha 6
    Rozbalit Rozbalit vše Re: C++ endian
    Za Stena mluvit nemůžu, ale předpokládám, že hlavní výhoda tkví v tom, že používáte knihovní funkci, tzn. praxí ověřenou věc namísto vlastních krkolomných konstrukcí, které mohou být náchylné k chybám. :-)
    clayman avatar 20.4.2011 20:06 clayman | skóre: 13 | Praha 6
    Rozbalit Rozbalit vše Re: C++ endian
    Eh, jsem si měl pořádně přečíst tvůj citát... :-(
    20.4.2011 17:58 Sten
    Rozbalit Rozbalit vše Re: C++ endian
    Význam je hlavně v tom, že explicitně říkáte, co tím přetypováním chcete udělat, jestli chcete odstranit const (const_cast), přetypovat natvrdo (static_cast), dynamicky (dynamic_cast) anebo úplně změnit význam nějakého pointeru (reinterpret_cast) (případně si pak můžete nadefinovat i vlastní přetypovávání, např. v Boostu je hodně dobré lexical_cast, které překládá obsah proměnných), takže pokud tam uděláte chybu (třeba reinterpret_cast zároveň odstraní const), tak to překladač odmítne přeložit.

    Založit nové vláknoNahoru

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

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