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 17:22 | Komunita

    Singularity (YouTube) je nejnovější otevřený film od Blender Studia. Jedná se o jejich první 4K HDR film.

    Ladislav Hagara | Komentářů: 0
    včera 16:55 | Zajímavý software

    Vyšla hra Život Není Krásný: Poslední Exekuce (Steam, ProtonDB). Kreslená point & click adventura ze staré školy plná černého humoru a nekorektního násilí. Vžijte se do role zpustlého exekutora Vladimíra Brehowského a projděte s ním jeho poslední pracovní den. Hra volně navazuje na sérii Život Není Krásný.

    Ladislav Hagara | Komentářů: 2
    včera 14:00 | Zajímavý projekt

    Společnost Red Hat představila Fedora Hummingbird, tj. linuxovou distribuci s nativním kontejnerovým designem určenou pro vývojáře využívající AI agenty.

    Pinhead | Komentářů: 4
    včera 02:22 | Zajímavý software

    Hru The Legend of Zelda: Twilight Princess od společnosti Nintendo si lze nově díky projektu Dusklight (původně Dusk) a reverznímu inženýrství zahrát i na počítačích a mobilních zařízeních. Vyžadována je kopie původní hry (textury, modely, hudba, zvukové efekty, …). Ukázka na YouTube. Projekt byl zahájen v srpnu 2020.

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

    Byla vydána nová major verze 29.0 programovacího jazyka Erlang (Wikipedie) a související platformy OTP (Open Telecom Platform, Wikipedie). Detailní přehled novinek na GitHubu.

    Ladislav Hagara | Komentářů: 0
    13.5. 21:22 | Bezpečnostní upozornění

    Po zranitelnostech Copy Fail a Dirty Frag přichází zranitelnost Fragnesia. Další lokální eskalace práv na Linuxu. Zatím v upstreamu neopravena. Přiřazeno ji bylo CVE-2026-46300.

    Ladislav Hagara | Komentářů: 1
    13.5. 14:00 | Komunita

    Sovereign Tech Agency (Wikipedie) prostřednictvím svého fondu Sovereign Tech Fund podpoří KDE částkou 1 285 200 eur.

    Ladislav Hagara | Komentářů: 8
    13.5. 12:55 | IT novinky

    Google na včerejší akci The Android Show | I/O Edition 2026 (YouTube) představil celou řadu novinek: Gemini Intelligence, notebooky Googlebook, novou generaci Android Auto, …

    Ladislav Hagara | Komentářů: 0
    13.5. 12:33 | IT novinky

    Evropská komise by do léta mohla předložit návrh normy omezující používání sociálních sítí dětmi v zájmu jejich bezpečí na internetu. Prohlásila to včera předsedkyně EK Ursula von der Leyenová, podle níž řada zemí Evropské unie volá po zavedení věkové hranice pro sociální sítě. EU částečně řeší bezpečnost dětí v digitálním prostředí v již platném nařízení o digitálních službách (DSA), podle německé političky to však není dostatečné a

    … více »
    Ladislav Hagara | Komentářů: 49
    13.5. 04:11 | Nová verze

    Multiplatformní open source aplikace scrcpy (Wikipedie) pro zrcadlení připojeného zařízení se systémem Android na desktopu a umožňující ovládání tohoto zařízení z desktopu, byla vydána v nové verzi 4.0.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (13%)
     (8%)
     (2%)
     (14%)
     (31%)
     (4%)
     (6%)
     (3%)
     (16%)
     (26%)
    Celkem 1618 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník
    Štítky: není přiřazen žádný štítek

    Dotaz: Vysvětlení kódu

    30.1.2014 19:29 Dan
    Vysvětlení kódu
    Přečteno: 318×
    Zdravím, prosím mohl by mi někdo vysvětlit jaktože mi z tohoto kódu http://pastebin.com/zFivX3na vyjde: 23____8 17___15

    Odpovědi

    AraxoN avatar 30.1.2014 19:41 AraxoN | skóre: 47 | blog: slon_v_porcelane | Košice
    Rozbalit Rozbalit vše Re: Vysvětlení kódu
    Lebo máš skompilovaný iný kód, než to čo si dal na pastebin. Výsledok kódu z pastebin je:
      6  12
      3  12
    30.1.2014 19:53 Dan
    Rozbalit Rozbalit vše Re: Vysvětlení kódu
    Jo pardon, hodil jsem jiný odkaz. Správný je: http://pastebin.com/Xm3eCzAV
    Fuky avatar 30.1.2014 20:37 Fuky | skóre: 52 | blog: 4u
    Rozbalit Rozbalit vše Re: Vysvětlení kódu
    #include <stdio.h>
    #include <stdlib.h>
     
    void funkce(int *a, int b)
    {
        // b = 17 / 2 = 8
        int y = b;
     
        // 7 + 8 = 15
        *a += y;
    
        // 15 + 8 = 23
        b = *a + y;
        printf("%d%5d\n", b, y);
    
        // nema vyznam
        y = b + *a;
    }
     
    int main(void)
    {
        int x = 17, y = 7;
     
        funkce(&y, x/2);
    
        // x = 17 protoze se predala fci pouze hodnota x, a fce si alokovala svoji lokalni promenou b
        // y = 15 protoze se predal fci ukazatel, takze muze fce menit hodnotu y
        printf("%d%5d", x, y);
    }
    

    BTW: Příště vkládej kód přímo na Ábíčko, ať z případné odpovědi a diskuze mají časem něco i ostatní, v době, kdy už Tvůj link nebude funkční.

    30.1.2014 20:39 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Vysvětlení kódu

    Možná bude lepší, když vysvětlíte vy, proč si myslíte, že by měl výstup vypadat jinak, a my vám pak řekneme, kde je ve vaší úvaze chyba. A nebo si to rovnou odkrokujte v debuggeru…

    P.S.: na rozumný coding style je lepší si zvykat hned od začátku

    Beda0 avatar 30.1.2014 21:02 Beda0 | skóre: 29
    Rozbalit Rozbalit vše Re: Vysvětlení kódu
    Funkce má dva parametry - první je pointr(ukzatel) což je adresa na které je uložena hodnota dané proměnné. *a znamená, že to z adresy (která je uložená v a) vezme hodnotu, která na ní je uložená. &y znamená, že to vezme adresu, na které je uložená proměnná y. * je inverzí k &

    První výpis je z printf uvnitř funkce. na začátku funkce(...) jsou jí předány parametry a = 7, b = 8; a je jasný, b = 17/2 = (int)8.5 = 8 - při přetypování se nezaokrouhluje, vše za desetinnou tečkou se zahodí;

    druhej řádek funkce y = b je jasný, y = 8;

    *a += y; jde přepsat jako a = a + y; a = 7 + 8 = 15;

    b = *a + y; jde přepsat jako b = 15 + 8 = 23;

    Vypíše b a y tedy 23 a 8;

    Druhý výpis je za funkcí, kdy první parametr je předán ukazatelem - takže ho funkce může změnit - do funkce je předána adresa proměnné a změna hodnoty proměnné se projeví i mimo funkci. Druhý parametr je předán hodnotou, takže ho funkce nemůže změnit - do funkce je předána kopie x a při změně x uvnitř funkce se s x mimo funkci nic nestane. po proběhnutí funkce se tedy y změnilo a y = 8; x se nezměnilo, tedy x = 17;
    Fuky avatar 30.1.2014 21:11 Fuky | skóre: 52 | blog: 4u
    Rozbalit Rozbalit vše Re: Vysvětlení kódu

    Já bych ještě doplnil, že vše potřebné je krásně vysvětleno v knize: Pavel Herout - Učebnice jazyka C . Takže další dotazy by jsem doporučil pokládat až po jejím přečtení a zpracování všech příkladů.

    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.