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 12:11 | IT novinky

    Google Blog ČR informuje, že mobilní aplikaci Gemini a NotebookLM lze používat už také v Česku.

    Ladislav Hagara | Komentářů: 3
    dnes 11:33 | Nová verze

    Byla vydána nová major verze 8 duálně licencovaného open source frameworku JUCE (Wikipedie, GitHub) pro vývoj multiplatformních audio aplikací.

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

    Od 18. června bude možné předobjednat notebook DC-ROMA RISC-V LAPTOP II od společnosti DeepComputing s osmijádrovým 64-bit RISC-V AI CPU a s předinstalovaným Ubuntu.

    Ladislav Hagara | Komentářů: 1
    včera 23:55 | Nová verze

    Byla vydána verze 1.79.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání na GitHubu. Vyzkoušet Rust lze například na stránce Rust by Example.

    Ladislav Hagara | Komentářů: 0
    včera 14:33 | Zajímavý článek

    Byly zveřejněny výsledky průzkumu (infografika) mezi uživateli FreeBSD.

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

    Na konferenci DevConf.CZ 2024 je na stánku Furi Labs prezentován linuxový telefon FuriPhone FLX1. Jeho cena 499 dolarů.

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

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

    Ladislav Hagara | Komentářů: 1
    12.6. 22:00 | Nová verze

    Proton, tj. fork Wine integrovaný v Steam Play a umožňující v Linuxu přímo ze Steamu hrát hry určené pouze pro Windows, byl vydán ve verzi 9.0-2 (𝕏). Přehled novinek se seznamem nově podporovaných her na GitHubu. Aktuální přehled her pro Windows běžících díky Protonu také na Linuxu na stránkách ProtonDB.

    Ladislav Hagara | Komentářů: 0
    12.6. 15:44 | Nová verze

    Po roce od vydání verze 15.5 bylo vydáno openSUSE Leap 15.6. Přehled novinek v nejnovější verzi této linuxové distribuce v oznámení o vydání a v poznámkách k vydání.

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

    Byla vydána nová verze 256 správce systému a služeb systemd (GitHub). Nově mimo jiné s run0 jako alternativou k sudo.

    Ladislav Hagara | Komentářů: 23
    Rozcestník

    Administrace komentářů

    Jste na stránce určené pro řešení chyb a problémů týkajících se diskusí a komentářů. Můžete zde našim administrátorům reportovat špatně zařazenou či duplicitní diskusi, vulgární či osočující příspěvek a podobně. Děkujeme vám za vaši pomoc, více očí více vidí, společně můžeme udržet vysokou kvalitu AbcLinuxu.cz.

    Příspěvek
    20.3.2011 00:16 Radovan
    Rozbalit Rozbalit vše Re: [C] Spojování textových souborů
    Jo pravda, ta čárka tam být měla, a navíc v tomhle případě to byl nějaký můj Stupid Read Error, asi jsem ospale zamžoural na nesprávném místě a blbě pochopil co vlastně ten program má dělat :-(

    Takže ještě jednou ať to stojí za to:
    #include <stdio.h>
    
    #define MAX 1024
    
    int main(int argc, char* argv[])
        {
        FILE *soubor[MAX+1];
        int i,c,ctenych=0,chyby=0;
    
        /* ohlídáme přípustný počet parametrů */
        if (argc>MAX+1)
           {
           /* když počet parametrů překročí limit */
           fprintf(stderr,"Tolik souborů nedokážu najednou otevřít!\n");
           return -1; /* program skončí chybou */
           }
    
        /* otevřeme soubory a všechny handle uložíme do pole */
        for (i=1;i<argc;++i)
            {
            if (!(soubor[i]=fopen(argv[i],"r")))
               {
               fprintf(stderr,"Soubor \"%s\" nelze otevřít!\n",argv[i]);
               ++chyby;
               }
            else
               {
               ++ctenych;
               }
            }
    
        /* zpracujeme je */
        while (ctenych)
              {
              /* pokud je otevřený aspoň jeden soubor */
              for (i=1;i<argc;++i)
                  {
                  /* projdeme celý seznam */
                  if (soubor[i])
                     {
                     /* a když zrovna tenhle můžeme číst */
                     while ((c=fgetc(soubor[i]))!='\n' && c!=EOF)
                           {
                           /* vypíšeme ho na stdout */
                           putchar(c);
                           }
                     if (c==EOF)
                        {
                        /* pokud jsme narazili na konec souboru */
                        fclose(soubor[i]); /* zavřeme ho */
                        soubor[i]=NULL;    /* vynulujeme handle abysme ho nezkoušeli číst */
                        --ctenych;         /* a odečteme od počtu otevřených */
                        }
                     }
                  }
              if (ctenych)
                 {
                 putchar('\n'); /* a pokud byl zobrazen nějaký znak odřádkujeme */
                 }
              }
    
        return chyby;
        }
    
    Když se chce vyhnout dynamické alokaci, tak si bude muset vystačit s omezeným počtem souborů. To mi připomnělo CONFIG.SYS, kde se psalo FILES=40 :-D

    Rozházené to má místy fakt nesmyslně, holt ještě neví co dělá a hlavně proč to dělá, časem si snad najde svůj styl ;-) Já jsem třeba o dva sloupce odsazoval v Pascalu, ale v Céčku mi to prostě nestačilo, musel jsem tam dávat čtyři abych se v tom neztratil.

    Ten příklad co jsem zmiňoval vypadal takhle nějak:
    while něco
          begin
          příkaz
          příkaz
          end
    

    V tomto formuláři můžete formulovat svou stížnost ohledně příspěvku. Nejprve vyberte typ akce, kterou navrhujete provést s diskusí či příspěvkem. Potom do textového pole napište důvody, proč by měli admini provést vaši žádost, problém nemusí být patrný na první pohled. Odkaz na příspěvek bude přidán automaticky.

    Vaše jméno
    Váš email
    Typ požadavku
    Slovní popis
    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.