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:11 | Nová verze

    Homebrew (Wikipedie), správce balíčků pro macOS a od verze 2.0.0 také pro Linux, byl vydán ve verzi 7.0.0. Pro sandboxing se na Linuxu nově používá Landlock místo Bubblewrap. Na stránce Homebrew Formulae lze procházet seznamem balíčků. K dispozici jsou také různé statistiky.

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

    Správce fotografií Shotwell byl vydán ve verzi 33.0 (GitLab). Hlavní novinkou v tomto vydání po dvou letech je přechod na GTK4.

    ʚĭɞ 🍉 | Komentářů: 0
    včera 01:44 | Komunita

    Na YouTube byly publikovány videozáznamy přednášek a na Flickru fotografie z konference EuroPython 2026.

    Ladislav Hagara | Komentářů: 0
    12.9. 18:11 | Nová verze

    Byl vydán Debian 13.7, tj. sedmá opravná verze Debianu 13 s kódovým názvem Trixie. Řešeny jsou především bezpečnostní problémy, ale také několik vážných chyb. Instalační média Debianu 13 lze samozřejmě nadále k instalaci používat. Po instalaci stačí systém aktualizovat.

    Ladislav Hagara | Komentářů: 0
    12.9. 02:00 | Zajímavý článek

    Jiří Eischmann se v příspěvku Fiasko jménem W Social na svém blogu věnuje evropské sociální síti W: "W Social je příkladem toho, že se problémy sociální sítí nedají řešit od exekutivního stolu. Když na začátku tohoto roku v Davosu oznámili vznik nové sociální sítě W Social, politici se mohli přetrhnout ve chvalozpěvech. Konečně evropská sociální síť a ještě s ověřením identity. … Jak se ukázalo, když v Davosu W Social oznamovali, neměli kromě

    … více »
    Ladislav Hagara | Komentářů: 19
    11.9. 18:00 | Bezpečnostní upozornění

    Výrobce hardwarových kryptoměnových peněženek Trezor upozorňuje na bezpečnostní incident u společnosti Brevo, kterou využívá k odesílání newsletterů. Útočník na e-mailové adresy odeslal phishingový e-mail.

    Ladislav Hagara | Komentářů: 5
    11.9. 14:33 | Komunita

    Clement "Clem" Lefebvre publikoval souhrn dění v Linux Mintu za srpen 2026. Aplikace XApp mají vlastní webovou stránku xapp-project.org. Představena byl čtečka EPUB s názvem Xepub a kalendář Clockenstein.

    Ladislav Hagara | Komentářů: 0
    11.9. 11:44 | Nová verze

    Byla vydána nová verze 3.2.6 svobodné aplikace pro úpravu a vytváření rastrové grafiky GIMP (GNU Image Manipulation Program). Přehled novinek v oznámení o vydání a v souboru NEWS na GitLabu. Nový GIMP je již k dispozici také na Flathubu.

    Ladislav Hagara | Komentářů: 0
    11.9. 11:33 | Nová verze

    Bylo vydáno Ubuntu 24.04.5 LTS, tj. páté opravné vydání Ubuntu 24.04 LTS s kódovým názvem Noble Numbat. Přehled novinek a oprav na poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    11.9. 04:33 | Komunita

    Švýcarsko testuje přechod z Microsoft 365 na FOSS, konkrétně balík openDesk (Wikipedie) od německé státní společnosti ZenDiS (Wikipedie), s cílem posílit digitální suverenitu.

    Ladislav Hagara | Komentářů: 10
    Které desktopové prostředí na Linuxu používáte?
     (10%)
     (7%)
     (4%)
     (21%)
     (29%)
     (7%)
     (5%)
     (2%)
     (14%)
     (21%)
    Celkem 2661 hlasů
     Komentářů: 31, poslední 13.8. 00:27
    Rozcestník

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

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

    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: 80 | 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: 6
    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: 6
    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: 6
    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: 6
    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.