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

V Barceloně probíhá veletrh Mobile World Congress 2017. Nokia na něm například představila (360° video na YouTube) novou Nokii 3310 (YouTube). BlackBerry představilo BlackBerry KEYone (YouTube) s QWERTY klávesnicí. LG představilo LG G6 (YouTube). Huawei HUAWEI P10 a P10 Plus. Samsung představil tablet Galaxy Tab S3.

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

Komunita kolem Linuxu From Scratch (LFS) vydala Linux Linux From Scratch 8.0 a Linux From Scratch 8.0 se systemd. Nové verze knih s návody na instalaci vlastního linuxového systému ze zdrojových kódů přichází především s Glibc 2.25 a GCC 6.3.0. Současně bylo oznámeno vydání verze 8.0 knih Beyond Linux From Scratch (BLFS) a Beyond Linux From Scratch se systemd.

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

Byla vydána verze 0.10.0 webového prohlížeče qutebrowser (Wikipedie). Přehled novinek v příspěvku na blogu. Vývojáři qutebrowseru kladou důraz na ovladatelnost pomocí klávesnice a minimální GUI. Inspirovali se prohlížečem dwb a rozšířeními pro Firefox Vimperator a Pentadactyl. Prohlížeč qutebrowser je naprogramován v Pythonu a využívá PyQt5. Zdrojové kódy jsou k dispozici na GitHubu pod licencí GNU GPL 3.

Ladislav Hagara | Komentářů: 10
25.2. 16:22 | Nová verze

Po pěti měsících od vydání Waylandu a Westonu 1.12.0 oznámil Bryce Harrington (Samsung) vydání Waylandu 1.13.0 a Westonu 2.0.0.

Ladislav Hagara | Komentářů: 1
24.2. 13:37 | Bezpečnostní upozornění

Společnost Cloudflare (Wikipedie) na svém blogu potvrdila bezpečnostní problém s její službou. V požadovaných odpovědích od reverzní proxy byla odesílána také data z neinicializované paměti. Útočník tak mohl získat cookies, autentizační tokeny, data posílaná přes HTTP POST a další citlivé informace. Jednalo se o chybu v parsování HTML. Zneužitelná byla od 22. září 2016 do 18. února 2017. Seznam webů, kterých se bezpečnostní problém potenciálně týká na GitHubu.

Ladislav Hagara | Komentářů: 1
24.2. 08:22 | Nová verze

Byla vydána první beta verze Ubuntu 17.04 s kódovým názvem Zesty Zapus. Ke stažení jsou obrazy Kubuntu, Lubuntu, Ubuntu Budgie, Ubuntu GNOME, Ubuntu Kylin, Ubuntu Studio a Xubuntu. Dle plánu by Ubuntu 17.04 mělo vyjít 13. dubna 2017.

Ladislav Hagara | Komentářů: 55
23.2. 17:53 | Bezpečnostní upozornění

Google na svém blogu věnovaném počítačové bezpečnost informuje o nalezení "reálného" způsobu generování kolizí hašovací funkce SHA-1. Podrobnosti a zdrojové kódy budou zveřejněny do 90 dnů. Již dnes lze ale na stránce SHAttered nalézt 2 pdf soubory, jejichž obsah se liší a SHA-1 otisk je stejný (infografika).

Ladislav Hagara | Komentářů: 41
23.2. 17:51 | Nová verze

Vyšla nová verzia open source software na správu a automatizáciu cloudových datacentier Danube Cloud 2.4. Danube Cloud je riešenie postavené na SmartOS, ZFS, KVM a zónach. Obsahuje vlastnosti ako integrovaný monitoring, DNS manažment, zálohy, a samozrejme rozsiahlu dokumentáciu.

dano | Komentářů: 13
23.2. 17:46 | Pozvánky

V Plzni se 3. až 5. března 2017 uskuteční AIMTEChackathon. Je to akce pro vývojáře, grafiky, webdesignéry i veřejnost. Akci provází zajímavé přednášky IT odborníků. Více o programu a možnosti přihlášení na stránkách akce.

cuba | Komentářů: 0
23.2. 01:00 | Nová verze

Známý šifrovaný komunikátor Signal od verze 3.30.0 již nevyžaduje Google Play Services. Autoři tak po letech vyslyšeli volání komunity, která dala vzniknout Google-free forku LibreSignal (dnes již neudržovaný). Oficiální binárky jsou stále distribuované pouze přes Google Play, ale lze použít neoficiální F-Droid repozitář fdroid.eutopia.cz s nezávislými buildy Signalu nebo oficiální binárku stáhnout z Google Play i bez Google účtu

… více »
xm | Komentářů: 8
Jak se stavíte k trendu ztenčování přenosných zařízení (smartphony, notebooky)?
 (13%)
 (2%)
 (72%)
 (3%)
 (10%)
Celkem 722 hlasů
 Komentářů: 68, poslední dnes 07:29
    Rozcestník

    Dotaz: int vs unsigned int, c vs c++ -> vraci jine hodnoty

    6.8.2011 02:15 sparrowhawk | skóre: 4
    int vs unsigned int, c vs c++ -> vraci jine hodnoty
    Přečteno: 325×

    dobry den,

    mohl by mi nekdo vysvetlit, proc u obou techto kodu je vysledek pokazde jiny? v pripade C je v promenne "c" ulozeno take cislo 2, ktere by tam ale byt nemelo, ze?
    v pripade C++ je v "c" ulozeno cislo, ktere je rovne maximalni hodnote int zkracene o prave zadane cislo vzdy o jednu mensi

     

    kod C

    #include <stdio.h>
    int main()
    {
    int a;
    signed int b;
    unsigned int c;
    printf("Enter a");
    scanf("%d", &a);
    printf("int=%d",a);
    printf("Enter b");
    scanf("%d", &b);
    printf(" signed=%d",b);
    printf("Enter c");
    scanf("%d", &c);
    printf(" unsigned=%d",c);
    return 0;
    }
    


    kod C++

    #include <iostream>
    using namespace std;
    int main(void)
    int a;
    signed int b;
    unsigned int c;
    cout << "Enter number a: ";
    cin >> a;
    cout << "Enter number b: ";
    cin >> b;
    cout << "Enter number c: ";
    cin >> c;
    cout << "int = "<< a << ", signed int = " << b << ", unsigned int = "<< c << endl;
    }
    

    predem dekuji za jakekoli reakce


    Řešení dotazu:


    Odpovědi

    6.8.2011 05:14 Petr Šobáň | skóre: 79 | blog: soban | Olomouc
    Rozbalit Rozbalit vše Re: int vs unsigned int, c vs c++ -> vraci jine hodnoty
    Přílohy:
    Nějak to nechápu kde je ten rozdíl ? Mě to vypisuje stejné hodnoty ...
    [petr@nt ~]$ ./pokus.bin
    Enter a 2
     int=2
    Enter b 2
     signed=2
    Enter c 2
     unsigned=2
    [petr@nt ~]$ ./pokus.bin
    Enter a 1
     int=1
    Enter b 1
     signed=1
    Enter c 1
     unsigned=1
    [petr@nt ~]$ ./pokus.bin
    Enter a 100
     int=100
    Enter b 100
     signed=100
    Enter c 100
     unsigned=100
    
    [petr@nt ~]$ ./pokus_cpp.bin
    Enter number a: 2
    Enter number b: 2
    Enter number c: 2
    int = 2, signed int = 2, unsigned int = 2
    [petr@nt ~]$ ./pokus_cpp.bin
    Enter number a: 1
    Enter number b: 1
    Enter number c: 1
    int = 1, signed int = 1, unsigned int = 1
    [petr@nt ~]$ ./pokus_cpp.bin
    Enter number a: 100
    Enter number b: 100
    Enter number c: 100
    int = 100, signed int = 100, unsigned int = 100
    
    6.8.2011 11:56 sparrowhawk | skóre: 4
    Rozbalit Rozbalit vše Re: int vs unsigned int, c vs c++ -> vraci jine hodnoty
    jsem vul, v dotazu jsem spatne uvedl, ze pri zadani zaporneho cisla, napr. "-2" ....... nicmene, nize uz mi bylo vse vysvetleno. jedna se %d vs %u. toto problem vyresilo

    vsem dekuji za odpovedi
    6.8.2011 12:00 sparrowhawk | skóre: 4
    Rozbalit Rozbalit vše Re: int vs unsigned int, c vs c++ -> vraci jine hodnoty
    nicmene mam k tomuto jeste jeden dotaz. podle vseho se zda, a ted me opravte, nebo mi to potvrdte, ze v pripade C je kazdy typ by default unsigned a v pripade C++ je kazdy typ by default signed. je to tak?
    6.8.2011 12:45 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: int vs unsigned int, c vs c++ -> vraci jine hodnoty
    Ne. Proč si to myslíte? U int, long i long long je default signed. Jen v případě char je to složitější a závisí to na dalších okolnostech.
    6.8.2011 12:50 sparrowhawk | skóre: 4
    Rozbalit Rozbalit vše Re: int vs unsigned int, c vs c++ -> vraci jine hodnoty
    jo, mate pravdu. moje i chyba pri oprave zdrojoveho kodu. jsem s %d nahradil za %u i u samotneho int. dekuji, uz je to jasne a uz vim
    Řešení 1× (sparrowhawk (tazatel))
    6.8.2011 05:31 Sten
    Rozbalit Rozbalit vše Re: int vs unsigned int, c vs c++ -> vraci jine hodnoty
    Tipuju problém v tom, že ve formátovacích funkcích zaměňujete signed a unsigned:
    scanf("%u", &c);
    printf(" unsigned=%u",c);
    Řešení 1× (sparrowhawk (tazatel))
    6.8.2011 10:55 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: int vs unsigned int, c vs c++ -> vraci jine hodnoty

    To má být nějaký kvíz "uhodněte, jak měl znít dotaz"? Za prvé: druhá ukázka nejde přeložit, protože vám tam chybí otevírací levá složená závorka funkce main(). Za druhé: neuvádíte, na jaké platformě a jakým překladačem jste to překládal. Za třetí (a nejhorší): neobtěžoval jste se ani napsat, s jakým vstupem jste to vlastně testoval. Za čtvrté: tvrdíte, že v proměnné c je u první ukázky hodnota 2; jak jste na to přišel, když vypisujete něco jiného, než její obsah?

    Můj tip je, že jste zadával hodnotu -2, první program vám vypsal třikrát -2 (ne 2, jak tvrdíte) a druhý dvakrát -2 a potřetí něco jako 2^{32}-2. Vysvětlení je takové, že v prvním programu konvertujete zadanou hodnotu (při vstupu) na unsigned int a pak zase zpátky na int (při volání printf()). Ve druhém provedete konverzi jen jednou (při zpracování vstupu), u výstupu se použije správná verze operátoru << podle typu proměnné. Pokud byste v prvním programu použil u posledního printf() správný formát %u, dopadlo by to stejně.

    6.8.2011 12:29 sparrowhawk | skóre: 4
    Rozbalit Rozbalit vše Re: int vs unsigned int, c vs c++ -> vraci jine hodnoty
    ano, omlouvam se, popsal jsem to spatne. vas tip byl ovsem spravny :) a resenim, jako u vyse uvedeneho komentare, byla chyba v pouziti %d namisto %u

    dekuji

    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.