abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 14:22 | Komunita

    Na YouTube je k dispozici videozáznam z včerejšího Czech Open Source Policy Forum 2024.

    Ladislav Hagara | Komentářů: 0
    dnes 13:22 | Nová verze

    Fossil (Wikipedie) byl vydán ve verzi 2.24. Jedná se o distribuovaný systém správy verzí propojený se správou chyb, wiki stránek a blogů s integrovaným webovým rozhraním. Vše běží z jednoho jediného spustitelného souboru a uloženo je v SQLite databázi.

    Ladislav Hagara | Komentářů: 0
    dnes 12:44 | Nová verze

    Byla vydána nová stabilní verze 6.7 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 124. Přehled novinek i s náhledy v příspěvku na blogu. Vypíchnout lze Spořič paměti (Memory Saver) automaticky hibernující karty, které nebyly nějakou dobu používány nebo vylepšené Odběry (Feed Reader).

    Ladislav Hagara | Komentářů: 0
    dnes 04:55 | Nová verze

    OpenJS Foundation, oficiální projekt konsorcia Linux Foundation, oznámila vydání verze 22 otevřeného multiplatformního prostředí pro vývoj a běh síťových aplikací napsaných v JavaScriptu Node.js (Wikipedie). V říjnu se verze 22 stane novou aktivní LTS verzí. Podpora je plánována do dubna 2027.

    Ladislav Hagara | Komentářů: 0
    dnes 04:22 | Nová verze

    Byla vydána verze 8.2 open source virtualizační platformy Proxmox VE (Proxmox Virtual Environment, Wikipedie) založené na Debianu. Přehled novinek v poznámkách k vydání a v informačním videu. Zdůrazněn je průvodce migrací hostů z VMware ESXi do Proxmoxu.

    Ladislav Hagara | Komentářů: 0
    dnes 04:11 | Nová verze

    R (Wikipedie), programovací jazyk a prostředí určené pro statistickou analýzu dat a jejich grafické zobrazení, bylo vydáno ve verzi 4.4.0. Její kódové jméno je Puppy Cup.

    Ladislav Hagara | Komentářů: 0
    včera 22:44 | IT novinky

    IBM kupuje společnost HashiCorp (Terraform, Packer, Vault, Boundary, Consul, Nomad, Waypoint, Vagrant, …) za 6,4 miliardy dolarů, tj. 35 dolarů za akcii.

    Ladislav Hagara | Komentářů: 12
    včera 15:55 | Nová verze

    Byl vydán TrueNAS SCALE 24.04 “Dragonfish”. Přehled novinek této open source storage platformy postavené na Debianu v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    včera 13:44 | IT novinky

    Oznámeny byly nové Raspberry Pi Compute Module 4S. Vedle původní 1 GB varianty jsou nově k dispozici také varianty s 2 GB, 4 GB a 8 GB paměti. Compute Modules 4S mají na rozdíl od Compute Module 4 tvar a velikost Compute Module 3+ a předchozích. Lze tak provést snadný upgrade.

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

    Po roce vývoje od vydání verze 1.24.0 byla vydána nová stabilní verze 1.26.0 webového serveru a reverzní proxy nginx (Wikipedie). Nová verze přináší řadu novinek. Podrobný přehled v souboru CHANGES-1.26.

    Ladislav Hagara | Komentářů: 0
    KDE Plasma 6
     (72%)
     (9%)
     (2%)
     (17%)
    Celkem 752 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Dotaz: jazyc c strcmp a argv[][]

    23.4.2011 12:17 Tomasko | skóre: 4
    jazyc c strcmp a argv[][]
    Přečteno: 287×
    Zdravím v krásný slunečný den.
    int main(int argc, char *argv[])
    {
    .
    .
    if ( strcmp("-", &argv[1][0]) == 0 )
    	{
     		printf("CHYBAAA!\n");
    	}
    .
    .
    .
    return 0;
    }
    
    kdyz zadam prvni parametr -1, tak mi to chybu nevypise, ale kdyz prehodim v kodu &argv[1][0] za &argv[1][1] a napisu 1-, tak mi to chybu vypise. Nevíte jak to udělat aby mi to bralo "-" pred parametrem? Děkuji

    Řešení dotazu:


    Odpovědi

    23.4.2011 12:37 rastos | skóre: 62 | blog: rastos
    Rozbalit Rozbalit vše Re: jazyc c strcmp a argv[][]
    Pretože &argv[1][0] je adresa prvého znaku parametra číslo jeden. To je pri parametri "-1" znak "-". Ale strcmp porovnáva nie znaky ale reťazce. To znamená, že v tomto prípade sa porovnáva "-" v prvom parametri funkcie strcmp s reťazcom "-1" (teda reťazcom, ktorý začína znakom "-" a pokračuje znakom "1") a porovnanie vráti "nezhodujú sa".

    Naopak &argv[1][1] je adresa druhého znaku z reťazca "1-" a teda adresa znaku "-". Inými slovami teda &argv[1][1] ukazuje na reťazec "-". V tomto prípade sa teda "-" porovnáva s "-" a porovnanie vráti "zhoduje sa".

    Odporúčam rozdeliť výraz a postupne dosadzovať do rôznych premenných,
    char *a=argv[1];
    char b=a[0];
    char c=a[1];
    char *d=&c;
    
    prípadne si nechať vypísať kus pamäte kam pointre ukazujú. Vrátane kusa pamäte pred.

    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.