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 12:44 | IT novinky

    Tim Cook po 15 letech opustí post generálního ředitele americké technologické společnosti Apple. Od 1. září ho vystřídá John Ternus, který byl dosud odpovědný za hardware. Cook se stane předsedou představenstva. Cook vedl Apple od roku 2011, kdy funkci převzal od zesnulého spoluzakladatele společnosti Stevea Jobse.

    Ladislav Hagara | Komentářů: 1
    dnes 12:33 | Humor

    Evropská aplikace na ověřování věku uživatelů lze hacknout během dvou minut, navzdory tvrzením předsedkyně Evropské komise Uršuly von der Leyenové, že je tato aplikace 'technicky připravená pro ostré nasazení' a 'splňuje nejvyšší standardy ochrany osobních údajů na světě'. Zdrojové kódy aplikace byly Bruselem zveřejněny v repozitářích na GitHubu.

    MakeIranBombedAgain❗ | Komentářů: 1
    včera 15:33 | IT novinky

    Po 26 letech od protiprávního policejního zásahu, který byl spuštěn na základě podnětu společnosti Microsoft, Obvodní soud pro Prahu 2 rozsudkem potvrdil, že Mironet prokázal významnou část svého nároku na náhradu škody vůči Ministerstvu spravedlnosti ČR. Soudem nyní přiznaná část nároku znamená rekordní odškodné, jaké kdy české soudy přiznaly za nesprávný postup státu. Spor byl rozdělen na několik škod, u pravomocně uzavřených částí

    … více »
    Ladislav Hagara | Komentářů: 22
    včera 15:22 | Nová verze

    Lehké desktopové prostředí LXQt bylo vydáno ve verzi 2.4.0. Jde o převážně opravné vydání s drobnými vylepšeními podpory Waylandu.

    |🇵🇸 | Komentářů: 0
    včera 12:44 | IT novinky

    Počítačová hra Kingdom Come: Deliverance 2 českého studia Warhorse získala cenu BAFTA v kategorii nejlepší příběh. V konkurenci pěti dalších nominovaných děl porazila i úspěšnou francouzskou hru Clair Obscur: Expedition 33, která v letošním ročníku získala cenu za nejlepší hru roku.

    Ladislav Hagara | Komentářů: 1
    včera 12:22 | Komunita

    Projekt KDE oslaví v říjnu 30 let. Matthias Ettrich poslal 14. října 1996 do diskusní skupiny comp.os.linux.misc zprávu, která započala historii projektu. Důležité milníky jsou zobrazeny na časové ose KDE.

    Ladislav Hagara | Komentářů: 2
    včera 02:55 | Komunita

    Byly vyhlášeny výsledky letošní volby vedoucí/ho projektu Debian (DPL, Wikipedie). Poprvé povede Debian žena. Novou vedoucí je Sruthi Chandran. Letos byla jedinou kandidátkou. Kandidovala již v letech 2020, 2021, 2024 a 2025. Na konferenci DebConf19 měla přednášku Is Debian (and Free Software) gender diverse enough?

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

    Byla vydána nová verze 10.3 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. Přehled novinek v poznámkách k vydání. Přidána byla podpora Orange Pi 4 LTS. Přibyl balíček Prometheus.

    Ladislav Hagara | Komentářů: 0
    19.4. 18:55 | Nová verze

    Implementace VPN softwaru WireGuard (Wikipedie) pro Windows, tj. WireGuard pro Windows a WireGuardNT, dospěly do verze 1.0.

    Ladislav Hagara | Komentářů: 2
    19.4. 16:11 | IT novinky

    V Pekingu dnes proběhl 2. ročník půlmaratonu humanoidních robotů. První 3 místa obsadili roboti Honor Lightning v různých týmech. Nový rekord autonomního robota je 50 minut a 26 sekund. Operátorem řízený robot to zvládl i s pádem za 48 minut a 19 sekund. Řízení roboti měli časovou penalizaci 20 %. Před rokem nejrychlejší robot zvládl půlmaraton za 2 hodiny 40 minut a 42 sekund. Aktuální lidský rekord drží Jacob Kiplimo z Ugandy s časem 57 minut a 20 sekund [𝕏].

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

    Dotaz: Převod off64_t na řetězec

    Jardík avatar 14.4.2006 22:04 Jardík | skóre: 40 | blog: jarda_bloguje
    Převod off64_t na řetězec
    Přečteno: 308×
    Chvilku jsem googlil, ale nikde jsem nenašel, jak převést na řetězec neznaménkové 64bit číslo jako je např. off64_t. Zkoušel jsem to pomocí sprintf, ale bezúspěšně.
    Věřím v jednoho Boha.

    Odpovědi

    Luboš Doležel (Doli) avatar 14.4.2006 22:07 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
    Rozbalit Rozbalit vše Re: Převod off64_t na řetězec
    sprintf, %llu
    Jardík avatar 14.4.2006 22:26 Jardík | skóre: 40 | blog: jarda_bloguje
    Rozbalit Rozbalit vše Re: Převod off64_t na řetězec
    Bohužel to nefunguje:
    off64_t cislo = 1024*1024*1024*6;
    char buffer[500];
    sprintf( buffer, "%llu", cislo );
    
    Ukáže to 2147483648, což není správně.
    Věřím v jednoho Boha.
    Luboš Doležel (Doli) avatar 14.4.2006 22:35 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
    Rozbalit Rozbalit vše Re: Převod off64_t na řetězec
    Takhle to dělat nemůžete:
    test.c:10: warning: integer overflow in expression
    test.c:10: warning: overflow in implicit constant conversion
    Musíte alespoň za jedno číslo přidat ULL.
    $ ./test
    6442450944
    
    Jardík avatar 14.4.2006 22:39 Jardík | skóre: 40 | blog: jarda_bloguje
    Rozbalit Rozbalit vše Re: Převod off64_t na řetězec
    I když dám ULL za všechny, tak to hodí stejně stejný výsledek. Nemůže to dělat kompilátor (MinGW)?
    Věřím v jednoho Boha.
    14.4.2006 22:37 #Tom | skóre: 32 | blog: Inspirace, aneb co jsem kde vyhrabal
    Rozbalit Rozbalit vše Re: Převod off64_t na řetězec
    Co tohle?
    sprintf(buffer, "%.0lf", (double) cislo);
    
    Jardík avatar 14.4.2006 22:44 Jardík | skóre: 40 | blog: jarda_bloguje
    Rozbalit Rozbalit vše Re: Převod off64_t na řetězec
    Tohle funguje (s tím ULL), ale není double znaménkový? Co když budu mít číslo 2^64?
    Věřím v jednoho Boha.
    14.4.2006 22:46 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Převod off64_t na řetězec
    Typ off_t je z podstaty věci také znaménkový.
    14.4.2006 22:46 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Převod off64_t na řetězec
    A off64_t samozřejmě také.
    Jardík avatar 14.4.2006 22:59 Jardík | skóre: 40 | blog: jarda_bloguje
    Rozbalit Rozbalit vše Re: Převod off64_t na řetězec
    Teď jsem se kouknul do sys/types.h a on je opravdu znaménkový. Takže se omlouvám za nesprávný výrok. Tím se ale také vše mění. Takže co teď předat funkci sprintf místo %llu a co psát za čísla místo ULL aby nedošlo k přetečení?
    Věřím v jednoho Boha.
    Luboš Doležel (Doli) avatar 14.4.2006 23:46 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
    Rozbalit Rozbalit vše Re: Převod off64_t na řetězec
    %lld a LL
    Jardík avatar 14.4.2006 23:58 Jardík | skóre: 40 | blog: jarda_bloguje
    Rozbalit Rozbalit vše Re: Převod off64_t na řetězec
    off64_t cislo = 1024*1024*1024*6;
    char buffer[500];
    sprintf( buffer, "%lld", cislo );
    
    =-2147483648 = Špatně
    off64_t cislo = 1024LL*1024LL*1024LL*6LL;
    char buffer[500];
    sprintf( buffer, "%lld", cislo );
    
    =-2147483648 = Špatně
    off64_t cislo = 1024*1024*1024*6;
    char buffer[500];
    sprintf( buffer, "%.0lf", (double)cislo );
    
    =-2147483648 = Špatně
    off64_t cislo = 1024LL*1024LL*1024LL*6LL;
    char buffer[500];
    sprintf( buffer, "%.0lf", (double)cislo );
    
    =6442450944 = OK
    Zřejmě mi nic jiného nezbude a budu muset použít to přetypování. Zajímavé ale je, že tobě to funguje. Asi ten MinGW má fci sprintf nějakou divnou :-(.
    Věřím v jednoho Boha.
    15.4.2006 00:38 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Převod off64_t na řetězec
    Proč se bráníte použít odpovídající makro 'PRId64', jak jsem vám poradil dříve?
    Jardík avatar 15.4.2006 11:57 Jardík | skóre: 40 | blog: jarda_bloguje
    Rozbalit Rozbalit vše Re: Převod off64_t na řetězec
    Když jsem napsal sprintf( buffer, PRId64, cislo );, tak mi to ukázalo chybu, že proměnná není definována. Pak jsem se kouknul do toho hlavičkového souboru a zjistil, že musím před hlavičkový soubor připsat #define __STDC_FORMAT_MACROS. Poté se ale do bufferu dal řetězec "I64d". Pak jsem vyzkoušel sprintf( buffer, "%I64d", cislo); a ono to funguje :-). Díky moc za nakopnutí správným směrem.
    Věřím v jednoho Boha.
    Jardík avatar 15.4.2006 12:01 Jardík | skóre: 40 | blog: jarda_bloguje
    Rozbalit Rozbalit vše Re: Převod off64_t na řetězec
    Hmm. Z hlavičkového souboru inttypes.h:
    /* 7.8.1 Macros for format specifiers
     * 
     * MS runtime does not yet understand C9x standard "ll"
     * length specifier. It appears to treat "ll" as "l".
     * The non-standard I64 length specifier causes warning in GCC,
     * but understood by MS runtime functions.
     */
    
    A pak mi nemá fungovat %lld a %llu.
    Věřím v jednoho Boha.
    14.4.2006 22:45 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Převod off64_t na řetězec
    Tak zkuste použít standardní hlavičkové soubory:
      #include <inttypes.h>
    
      ...
      
      printf(PRId64, cislo);
    

    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.