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 00:33 | IT novinky

Josef Průša představil na Maker Faire v New Yorku svou novou 3D tiskárnu Original Prusa i3 MK3. Z novinek (YouTube) lze zdůraznit senzor filamentu, výměnnou magnetickou podložku, rychlejší tisk nebo rozpoznání uskočené vrstvy, výpadku napájení a výpadku filamentu (YouTube).

Ladislav Hagara | Komentářů: 2
včera 17:22 | Komunita

Martin Flöser představil na svém blogu projekt XFree KWin. Cílem projektu je rozběhnout správce oken KWin na Waylandu bez XWaylandu [reddit].

Ladislav Hagara | Komentářů: 6
včera 16:55 | Komunita

Do pátku 29. září probíhá v Praze v hotelu Hilton konference SUSECON 2017 pořádaná společností SUSE. Dění na konferenci lze sledovat na Twitteru. Nils Brauckmann, CEO společnosti SUSE, vítá účastníky konference na YouTube.

Ladislav Hagara | Komentářů: 2
včera 07:00 | Komunita

Příspěvek na blogu společnosti Yubico informuje o začlenění podpory bezpečnostních klíčů FIDO U2F do Firefoxu Nightly. Dosud bylo možné dvoufázové ověření pomocí FIDO U2F ve Firefoxu zajistit pouze pomocí doplňku.

Ladislav Hagara | Komentářů: 3
včera 06:00 | Humor

Adobe PSIRT (Adobe Product Security Incident Response Team) neúmyslně zveřejnil (archive) na svém blogu svůj soukromý OpenPGP klíč. Klíč byl revokován a vygenerován nový. Nelze nezmínit xkcd 1553 - Veřejný klíč.

Ladislav Hagara | Komentářů: 1
24.9. 20:00 | Nová verze

Byla vydána (cgit) verze 0.99 svobodného nelineárního video editoru Pitivi. Jedná se o release candidate verze 1.0. Přehled úkolů, které je nutno ještě dodělat, na Phabricatoru. Pitivi je k dispozici také ve formátu Flatpak.

Ladislav Hagara | Komentářů: 0
24.9. 17:11 | Komunita

Microsoft s Canonicalem představili linuxové jádro Ubuntu optimalizováno pro cloudové služby Microsoft Azure (linux-azure). Jako výchozí je toto menší a výkonnější jádro použito již v Ubuntu Cloud Images for Ubuntu 16.04 LTS. Canonical zatím nenabízí patchování tohoto jádra za běhu systému (Canonical Livepatch Service).

Ladislav Hagara | Komentářů: 1
24.9. 14:55 | Komunita

Facebook oznámil, že přelicencuje open source projekty React, Jest, Flow a Immutable.js ze své vlastní kontroverzní licence BSD+Patents na licenci MIT. Stane se tak tento týden s vydáním Reactu 16. Jedním z důvodů přelicencování bylo oznámení nadace Apache, že software pod Facebook BSD+Patents licencí nesmí být součástí produktů pod touto nadací [Hacker News].

Ladislav Hagara | Komentářů: 0
23.9. 21:44 | Nová verze

Po půl roce od vydání verze 9.0 byla vydána verze 10.0 open source alternativy GitHubu, tj. softwarového nástroje s webovým rozhraním umožňujícího spolupráci na zdrojových kódech, GitLab (Wikipedie). Představení nových vlastností v příspěvku na blogu a na YouTube.

Ladislav Hagara | Komentářů: 1
22.9. 18:11 | Nová verze

Společnost Oracle oficiálně oznámila vydání Java SE 9 (JDK 9), Java Platform Enterprise Edition 8 (Java EE 8) a Java EE 8 Software Development Kit (SDK). Java SE 9 přináší více než 150 nových vlastností.

Ladislav Hagara | Komentářů: 0
Těžíte nějakou kryptoměnu?
 (5%)
 (3%)
 (17%)
 (75%)
Celkem 579 hlasů
 Komentářů: 23, poslední 24.9. 18:12
    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: 223×
    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.