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 02:16 | Bezpečnostní upozornění
    Zranitelnost CVE-2026-98432 s CVSS 9.8 odhalila AI od společnosti Anthropic. Jedná se o kritickou chybu v implementaci MPTCP (multipath TCP). Debian vydal patche 16.10. a 22.10., ale např. Ubuntu je zatím bez opravy. Více informací na thehackernews.com.
    Max | Komentářů: 0
    včera 23:22 | Zajímavý software

    Na Slovensku vznikla úplne nová rally hra, ktorá je zadarmo a funguje vo Windowse, Linuxe či na Macu. Greenie Rally má viac ako 50 tratí a vozidiel, šampionáty či turnaje. Má retro feeling a imituje automobilové hry z prelomu tisícročí. Vyskúšate prejsť všetky mapy na Škode 130RS?

    Stanislav Hoferek | Komentářů: 0
    včera 14:33 | Komunita

    Do základního systému NetBSD -current byl přidán nový editor atto jako alternativa k editorům vi a xedit.

    Ladislav Hagara | Komentářů: 1
    včera 14:11 | IT novinky

    Společnost System76 představila kompaktní 11litrový Thelio Prime Desktop. S procesorem AMD Ryzen 9000. S Pop!_OS 24.04 LTS s desktopovým prostředím COSMIC nebo Ubuntu 24.04 LTS.

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

    Čínská státní televize pozastavila vysílání španělské La Ligy a čínské internetové platformy omezily obsah s Kylianem Mbappém poté, co slavný fotbalista ve francouzském pořadu The Bridge mluvil o svém oblíbeném memu, v němž je jeho tvář vložena do portrétu zobrazujícího diktátora Mao Ce-tunga. 'Můj oblíbený mem je ten, na kterém dali můj obličej na čínského diktátora. To mě opravdu rozesmívá. S přáteli ho používám pořád' řekl,

    … více »
    Pendrekama do nich❗ | Komentářů: 4
    včera 13:22 | IT novinky

    Při příležitosti oslav Dne vzniku samostatného československého státu (28. října) byly uděleny medaile Za zásluhy tvůrci aplikace Záchranka Filipu Maleňákovi, vědci v oblasti umělé inteligence Tomáši Mikolovovi a Olze Štěpánkové, vědkyni zabývající se kybernetikou, robotikou a strojovým učením, průkopnici v oblastech výuky a využití umělé inteligence v medicínském inženýrství.

    Pendrekama do nich❗ | Komentářů: 2
    včera 01:33 | IT novinky

    Apple představil nový iPad mini, iMac s čipem M6, 14palcový MacBook Pro s čipem M6 a MacBook Pro s PROLED XDR displejem – první Mac s dotykovým ovládáním.

    Ladislav Hagara | Komentářů: 4
    28.10. 23:22 | Zajímavý projekt

    Nedávno představený projekt mapSTL.com řeší budoucnost. 𝕏: "Netušil jsem, kolik patentů na generování map existuje. Existují patenty na generování fantasy map 🫣. Cokoliv je na 3D tiskárnu a tvoří to produkt, bude to mít patenty. Tak bacha na to!" … více »

    Ladislav Hagara | Komentářů: 3
    28.10. 18:55 | Nová verze

    Multiplatformní emulátor terminálu Ghostty byl vydán ve verzi 1.4 (𝕏). Přehled novinek a vylepšení v poznámkách k vydání.

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

    Byla objevena zranitelnost Tailworm v Tailscale a Headscale umožňující lokální eskalaci práv přihlášeného uživatele. Následně byla v Tailscale v opravené verzi 1.104.4+ změněna architektura aplikace. Viz příspěvek na blogu Tailscale.

    vencour | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (9%)
     (7%)
     (4%)
     (20%)
     (30%)
     (9%)
     (5%)
     (2%)
     (14%)
     (20%)
    Celkem 2940 hlasů
     Komentářů: 34, poslední 26.10. 08:24
    Rozcestník

    Dotaz: Maximalni velikost otviraneho txt souboru skrze FILE* v C

    tomes.io avatar 19.9.2012 16:27 tomes.io | skóre: 12 | blog: tomesh
    Maximalni velikost otviraneho txt souboru skrze FILE* v C
    Přečteno: 886×
    Ahoj,

    zajimalo by me, jak veliky muze byt textovy soubor, ktery otviram pro cteni. Resp. by me zajimalo, zda nize uvedeny program, ktery jen pocita vyskyt retezce v danem textovem souboru muze mit teoreticky i velikost nekolika GB, nebo je to nejak omezene?

    Chci, aby muj program sel radek po radku (max velikost radku je 512) a v kazdem, pokud najde hledany retzec 'do' spocital, kolikrat se na radku vyskytl a na kolikatem radku to vlastne bylo. Nize uvedeny program funguje pro "male" textove soubory o par radcich. Muze ale takovy program cist i velike soubory?
    
    
    void read_file (FILE *fr, char *what){
       
        char input[512];     
        int what_len = strlen(what);                             
        int line = 0;                                         //Counter of lines.
        int num = 0;     
       
        /*Reading a text file line by line.*/
       
        while (fgets(input, 512 , fr) != NULL){
           
           line++;        
           char *where = input;
           
            /*Checking an occurrence of searched string.*/
           
              while ((where = strstr(where, what))) {         
               where += what_len;
               num++;           
             }  //End of WHILE
               
             /* Value num > 0 Indicates an occurrence of searched string so that a message for a user can be printed.*/
           
             if (num > 0) {                                     
                printf("Searched string '%s' is found %d times on line %d\n", what, num, line);
           
                num = 0;   //Initial position for the next checking must be 0.
             }  //End of IF
                    
         }  //End of WHILE
       
        fclose(fr);
       
    }  //End of the function 'read_file'
    
    int main(){  
       
        char *what = "do";
        FILE *fr;
        fr = fopen("text.txt","r");    
        read_file(fr, what);   
        return 0;
    }
    

    Řešení dotazu:


    Odpovědi

    19.9.2012 16:56 Kit
    Rozbalit Rozbalit vše Re: Maximalni velikost otviraneho txt souboru skrze FILE* v C
    A proč si to nezkusíš? To je takový problém si vyrobit 20GB soubor s testovacími daty?

    Velikost limitována není. Záleží jen na typu souborového systému.
    tomes.io avatar 20.9.2012 21:51 tomes.io | skóre: 12 | blog: tomesh
    Rozbalit Rozbalit vše Re: Maximalni velikost otviraneho txt souboru skrze FILE* v C
    Nenapada me jak tak velky textovy soubor vygenerovat :) Mozna sloucit nekolik zdrojvych souboru linux jadra do jednoho :) Kazdopadne pokud velikost neni problem, tak jsem spokojeny. Diky.
    20.9.2012 22:37 Sten
    Rozbalit Rozbalit vše Re: Maximalni velikost otviraneho txt souboru skrze FILE* v C
    while [ "$(ls -l test.txt | awk '{ print $5 }')" -lt "20000000000" ]; do cat nejaky_kratky_dokument.txt >>test.txt done
    20.9.2012 23:05 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Maximalni velikost otviraneho txt souboru skrze FILE* v C
    10MiB plný '\0':
    dd if=/dev/zero of=10MiB.files bs=1048576 count=10
    10MiB random (o kus pomalejší):
    dd if=/dev/urandom of=10MiB.files bs=1048576 count=10
    Stačí jen upravit 10 na 20480 a je 20GiB files.
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    21.9.2012 06:58 rastos | skóre: 63 | blog: rastos
    Rozbalit Rozbalit vše Re: Maximalni velikost otviraneho txt souboru skrze FILE* v C
    Na súbore plnom núl mu asi jeho fgets() bude platné ako popolník na motorke.

    @ ToMesh: do 32-bitov dĺžky je to bez problémov. Pre väčšie hľadaj large file support glibc.
    21.9.2012 11:43 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Maximalni velikost otviraneho txt souboru skrze FILE* v C
    Na súbore plnom núl mu asi jeho fgets() bude platné ako popolník na motorke.
    A to prečo?
    Přečte to vždy právě 511 znaků - nic následný kód sice nenajde, ale celý soubor bude normálně přečten.

    Pro autora dotazu: u gcc by mělo stačit, přidat při kompilaci parametr (define) -D_FILE_OFFSET_BITS=64
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    21.9.2012 11:46 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Maximalni velikost otviraneho txt souboru skrze FILE* v C
    Na 32bit to obvykle je limitováno (proto to nezvládnou ani standardní compilace PHP-ek na 32bit).
    K odstranění limitu je třeba kompilovat s -D_FILE_OFFSET_BITS=64.
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    tomes.io avatar 21.9.2012 19:56 tomes.io | skóre: 12 | blog: tomesh
    Rozbalit Rozbalit vše Re: Maximalni velikost otviraneho txt souboru skrze FILE* v C
    Diky, ten kompilacni prikaz je asi to co jsem potreboval, prihodim do Makefilu :)

    Založit nové vlákno • Nahoru

    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.