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:44 | IT novinky

    Po 8. květnu 2026 už na Instagramu nebudou podporované zprávy opatřené koncovým šifrováním. V chatech, kterých se bude změna týkat, se objeví pokyny o tom, jak si média nebo zprávy z nich stáhnout, pokud si je chcete ponechat.

    Ladislav Hagara | Komentářů: 0
    dnes 00:33 | IT novinky

    V lednu byla ve veřejné betě obnovena sociální síť Digg (Wikipedie). Dnes bylo oznámeno její ukončení (Hard Reset). Společnost Digg propouští velkou část týmu a přiznává, že se nepodařilo najít správné místo na trhu. Důvody jsou masivní problém s boty a silná konkurence. Společnost Digg nekončí, malý tým pokračuje v práci na zcela novém přístupu. Cílem je vybudovat platformu, kde lze důvěřovat obsahu i lidem za ním. Od dubna se do Diggu na plný úvazek vrací Kevin Rose, zakladatel Diggu z roku 2004.

    Ladislav Hagara | Komentářů: 0
    včera 12:33 | Zajímavý projekt

    MALUS je kontroverzní proprietarní nástroj, který svým zákazníkům umožňuje nechat AI, která dle tvrzení provozovatelů nikdy neviděla původní zdrojový kód, analyzovat dokumentaci, API a veřejná rozhraní jakéhokoliv open-source projektu a následně úplně od píky vygenerovat funkčně ekvivalentní software, ovšem pod libovolnou licencí.

    NUKE GAZA! 🎆 | Komentářů: 11
    včera 03:55 | Bezpečnostní upozornění

    Příspěvek na blogu Ubuntu upozorňuje na několik zranitelností v rozšíření Linuxu o mandatorní řízení přístupu AppArmor. Společně jsou označovány jako CrackArmor. Objevila je společnost Qualys (technické detaily). Neprivilegovaný lokální uživatel se může stát rootem. Chyba existuje od roku 2017. Doporučuje se okamžitá aktualizace. Problém se týká Ubuntu, Debianu nebo SUSE. Red Hat nebo Fedora pro mandatorní řízení přístupu používají SELinux.

    Ladislav Hagara | Komentářů: 2
    12.3. 17:22 | Nová verze

    Byla vydána nová verze 19 integrovaného vývojového prostředí (IDE) Qt Creator. Podrobný přehled novinek v changelogu.

    Ladislav Hagara | Komentářů: 0
    12.3. 03:44 | Nová verze

    Bitwig Studio (Wikipedie) bylo vydáno ve verzi 6. Jedná se o proprietární multiplatformní (macOS, Windows, Linux) digitální pracovní stanici pro práci s audiem (DAW).

    Ladislav Hagara | Komentářů: 4
    12.3. 02:11 | Komunita

    Společnost Igalia představila novou linuxovou distribuci (framework) s názvem Moonforge. Jedná se o distribuci určenou pro vestavěné systémy. Vychází z projektů Yocto a OpenEmbedded.

    Ladislav Hagara | Komentářů: 0
    12.3. 00:44 | Nová verze

    Google Chrome 146 byl prohlášen za stabilní. Nejnovější stabilní verze 146.0.7680.71 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 29 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře.

    Ladislav Hagara | Komentářů: 0
    12.3. 00:22 | Nová verze

    D7VK byl vydán ve verzi 1.5. Jedná se o fork DXVK implementující překlad volání Direct3D 3 (novinka), 5, 6 a 7 na Vulkan. DXVK zvládá Direct3D 8, 9, 10 a 11.

    Ladislav Hagara | Komentářů: 0
    11.3. 23:22 | Nová verze

    Bylo vydáno Eclipse IDE 2026-03 aneb Eclipse 4.39. Představení novinek tohoto integrovaného vývojového prostředí také na YouTube.

    Ladislav Hagara | Komentářů: 4
    Které desktopové prostředí na Linuxu používáte?
     (16%)
     (7%)
     (0%)
     (12%)
     (29%)
     (2%)
     (5%)
     (1%)
     (13%)
     (24%)
    Celkem 1070 hlasů
     Komentářů: 26, poslední 12.3. 08:56
    Rozcestník

    Dotaz: Vyrovnavacia pamat v linuxe

    28.9.2010 21:35 Igor Bielik
    Vyrovnavacia pamat v linuxe
    Přečteno: 523×
    Ahojte mam maly problem da sa nastavit vyrovnavacia pamat v linuxe tak aby sa nepouzivala? Skusal som funkcie setbuf, setbuffer ale nedari sa mi ju vypnut viac priklad.
    
    #include  
    
    int  main(void)
    {
      int  cislo[2];
      char retazec[2][10];
    
      fprintf(stdout, "Zadaj cislo 1: ");
      scanf("%d", &cislo[0]); 
      setbuf(stdin, NULL);
    
      fprintf(stdout, "Zadaj cislo 2: ");
      scanf("%d", &cislo[1]);
      setbuffer(stdin, NULL, 0);
    
      fprintf(stdout, "Zadaj retazec 1: ");
      fscanf(stdin, "%9s", retazec[0]);
    
      fprintf(stdout, "Zadaj retazec 2: ");
      fscanf(stdin, "%9s", retazec[1]);
    
      printf("%s %s %d %d\n", retazec[0], retazec[1],
                              cislo[0], cislo[1]);
    	return 0;
    }
      Chcel by som aby sa nacital iba prvy parameter a nie cely buffer. Napr: Zadaj cislo 2: 22 retazec1 retazec2
    a automaticky sa to nacita z bufferu ako tomu zabranit?
    
    
    

    Řešení dotazu:


    Odpovědi

    29.9.2010 10:24 luky
    Rozbalit Rozbalit vše Re: Vyrovnavacia pamat v linuxe
    Nepochopil som co si mal presne na mysli. Ale vo vseobecnosti buffer sluzi na urychlenie prace s IO prudmi. Ak na vstup nedostanes to co ocakavas, problem bude skor vo formatovacom retazci pri volani funkcie scanf().

    29.9.2010 19:11 Sten
    Rozbalit Rozbalit vše Re: Vyrovnavacia pamat v linuxe
    Nijak. Můžeš před vypsáním zadání přečíst (a zahodit) celý vstup (to dělá třeba su), ale proč to vůbec chceš dělat?
    29.9.2010 19:14 Sten
    Rozbalit Rozbalit vše Re: Vyrovnavacia pamat v linuxe
    setbuf a setbuffer slouží pro výstupní proudy a jenom pro tu aplikaci (pro bufferování dat, která se poté předají jádru), nijak neovlivňují buffery v jádře (které mj. provádějí bufferování stdin). Více viz manuál
    29.9.2010 20:54 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
    Rozbalit Rozbalit vše Re: Vyrovnavacia pamat v linuxe
    Vím že to jde, nevím zda i v linuxu.

    Prostě musí se ten proud stdout skopírovat a pak používat tu kopii kde už se dá buffer nastavit.

    Nebo nějak tak jsem to viděl v příkladu kdysi, jak přijedu domů skusím projít knížky.
    29.9.2010 21:02 Sten
    Rozbalit Rozbalit vše Re: Vyrovnavacia pamat v linuxe
    Tohle jde u ISO C++ iostreamů (i bez kopírování), ale ne u ISO C
    29.9.2010 21:08 pht | skóre: 48 | blog: pht
    Rozbalit Rozbalit vše Re: Vyrovnavacia pamat v linuxe
    Myslím že ho trápí to že když napíše "123 hola" a [enter] tak sekvence scanf("%d"), scanf("%s") mu naparsuje 123 a "hola" a on místo toho chce aby se to na "hola" vysralo a vynutilo si to "123" [enter] "hola" [enter].
    In Ada the typical infinite loop would normally be terminated by detonation.
    30.9.2010 11:29 Sten
    Rozbalit Rozbalit vše Re: Vyrovnavacia pamat v linuxe
    Ano, to chápu. su dělá to, že přečte a zahodí veškerý vstup předtím, než začne načítat heslo. Do konce řádku lze zahazovat vstup třeba pomocí while ((c = getchar()) != '\n' && c != EOF) ;
    29.9.2010 20:58 Igor Bielik
    Rozbalit Rozbalit vše Re: Vyrovnavacia pamat v linuxe
    Proste slo mi oto aby uzivatel zadal iba jeden paramater resp. jednu hodnotu na vstupe.
    vlastikroot avatar 30.9.2010 06:26 vlastikroot | skóre: 24 | blog: vlastikovo | Milevsko
    Rozbalit Rozbalit vše Re: Vyrovnavacia pamat v linuxe
    fflush(stdin);
    We will destroys the Christian's legion ... and the cross, will be inverted
    30.9.2010 10:38 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
    Rozbalit Rozbalit vše Re: Vyrovnavacia pamat v linuxe
    A skusil jsi to? To taky nefunguje.
    30.9.2010 14:14 Igor Bielik
    Rozbalit Rozbalit vše Re: Vyrovnavacia pamat v linuxe
    Tak som si nasiel zdrojak su a pozrel ako to je riesene tam. Cez funkciu getline tak som ju tiez pouzil a funguje to podla mojich predstav. Dakujem vsetkym za pomoc.

    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.