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 16:00 | IT novinky

    Americká společnost Google ze skupiny Alphabet bude muset podle nových požadavků Evropské unie umožnit společnosti OpenAI i dalším konkurentům v oblasti umělé inteligence (AI) a internetových vyhledávačů přístup ke svým službám. Ve svém rozhodnutí o tom včera informovala Evropská komise (EK). Opatření má zajistit dodržování pravidel, jejichž cílem je omezit v EU tržní sílu velkých technologických firem. Google s tím nesouhlasí.

    … více »
    Ladislav Hagara | Komentářů: 0
    dnes 04:55 | Komunita

    Nové verze webových prohlížečů Chrome a Firefox jsou vydávány každé 4 týdny. Aktuální verze Chrome je 150. Aktuální verze Firefoxu je 152. V březnu bylo oznámeno, že od září přejde Chrome na dvoutýdenní cyklus vydávání verzí. To by znamenalo, že Chrome v číslování verzí Firefox brzy přeskočí. Vývojáři Firefoxu proto také od září přecházejí na dvoutýdenní cyklus vydávání verzí. :-)

    Ladislav Hagara | Komentářů: 2
    dnes 00:22 | Zajímavý software

    Microsoft Comic Chat (Wikipedie), tj. grafický IRC klient z devadesátek, který převáděl konverzace na IRC do podoby komiksových panelů, a který zpopularizoval font Comic Sans, je dnešním dnem open source. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT.

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

    Byla vydána (𝕏) nová verze 26.7 open source firewallové a routovací platformy OPNsense (Wikipedie). Jedná se o fork pfSense postavený na FreeBSD. Kódový název OPNsense 26.7 je Xenial Xenops. Přehled novinek v příspěvku na fóru.

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

    Na Seznam nepovolených internetových her (Wikipedie) se k 13. 7. 2026 dostala predikční platforma Polymarket.

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

    Nová čísla časopisů od nakladatelství Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 167 (pdf) a Hello World 30 (pdf).

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

    Byla vydána nová verze 3.22.0 grafického vývojového prostředí a platformy Gambas (Wikipedie) založené na interpretru programovacího jazyka Basic s rozšířením o objektově orientované programování. Přehled novinek v poznámkách k vydání. Zdrojové kódy jsou k dispozici na GitLabu.

    Ladislav Hagara | Komentářů: 0
    15.7. 20:22 | Komunita

    FreeBSD odstranilo poslední GPL kód ze základního systému. Konkrétně dpv, libdpv, libfigpar a dialog. Instalátor před čtyřmi lety přešel z dialogu na bsddialog.

    Ladislav Hagara | Komentářů: 2
    15.7. 15:22 | IT novinky

    Sociální síti 𝕏 (dříve Twitter) má dnes 20 let. Pro veřejnost byla zpřístupněna 15. července 2006.

    Ladislav Hagara | Komentářů: 2
    15.7. 14:22 | Zajímavý software

    Insula Faktury je open source generátor faktur, který běží přímo ve webovém prohlížeči. Žádná registrace, žádné sledování, žádné omezení. Zdrojové kódy jsou k dispozici na Codebergu.

    Ladislav Hagara | Komentářů: 19
    Které desktopové prostředí na Linuxu používáte?
     (11%)
     (7%)
     (2%)
     (17%)
     (31%)
     (4%)
     (6%)
     (2%)
     (15%)
     (25%)
    Celkem 2153 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník


    Dotaz: c++ hledani v textovem souboru

    7.11.2013 16:58 marek33
    c++ hledani v textovem souboru
    Přečteno: 1012×
    jak overit zda je v textovem souboru ulozeno slovo, ktere uzivatel zadal?

    Odpovědi

    7.11.2013 17:32 Milan Roubal | skóre: 25
    Rozbalit Rozbalit vše Re: c++ hledani v textovem souboru
    #include <stdlib.h>
    
    int main(void)
    {
      system("grep -e slovo soubor.txt");
    }
    7.11.2013 22:44 bjarne
    Rozbalit Rozbalit vše Re: c++ hledani v textovem souboru
    To je lajdácké c++, za to zápočet v životě nedostane. Správně tam mělo být include cstdlib, void v závorkách do ++ taky nepatří a ještě by stálo za to vyhodnotit návratovou hodnotu, jestli se to teda našlo či nikoliv. Znovu a lépe!
    10.11.2013 20:37 Sten
    Rozbalit Rozbalit vše Re: c++ hledani v textovem souboru
    A když už se používá cstdlib, tak tam má být std::system ;-)
    7.11.2013 17:42 Andrej | skóre: 51 | blog: Republic of Mordor
    Rozbalit Rozbalit vše Re: c++ hledani v textovem souboru
    Nejlepší bude otevřít soubor a pak běžným způsobem vyhledávat v textu. Pokud jde o jednoduché slovo a ne o regexp, celý graf se zredukuje na jednu cestu, tj. implementace bude poměrně snadná. Jen pozor na správné nastavení zpětné funkce; ta bude záviset na hledaném slově. Pokud jde o standardní text se slovy oddělenými mezerami, další možnost (snazší, méně efektivní (složitost závisí na délce hledaného slova), tupější, méně zábavná a méně poučná) je číst slovo od slova, ať už tak nebo tak, a porovnávat ho se vstupním slovem (i operátor == bude stačit).
    7.11.2013 19:41 potato
    Rozbalit Rozbalit vše Re: c++ hledani v textovem souboru
    Nastávají teď dlouhé zimní večery, takže implementace Aho–Corasick jistě přijde vhod, ale normálně bych soubor mmap()nul a použil memmem(), pokud se tedy má vyhledávat řetězec. Má-li se vyhledávat slovo v textu (tedy řešit kódování, normalizaci, rozpoznání hranic slov, etc.), tak si to rozhodně nepsat sám, ale použít knihovnu, metody jsou např. i v boostu.
    7.11.2013 20:46 Andrej | skóre: 51 | blog: Republic of Mordor
    Rozbalit Rozbalit vše Re: c++ hledani v textovem souboru

    To je všechno pravda, ale měl jsem dojem, že otázka nápadně připomíná nějaký zápočťák. :-)

    8.11.2013 09:48 potato
    Rozbalit Rozbalit vše Re: c++ hledani v textovem souboru
    To je dost možné. Na druhé straně snad funkce standardní knihovny (tedy libc a libstdc++ pro C++) lze při řešení zápočťáků používat. Nebo musí otevírat soubory syscallem a napsat si kolem toho nějakou tu třídu či frameworčík? Možné je vše...
    9.11.2013 01:01 Andrej | skóre: 51 | blog: Republic of Mordor
    Rozbalit Rozbalit vše Re: c++ hledani v textovem souboru

    Záleží na konkrétním zadání. Jestliže zadání říká například „implementujte insert a delete ve vyvážených stromech“, použití std::set asi nebude preferovaná metoda vypracování úkolu.

    Kromě toho je rozdíl mezi něčím, co je pouze technicky náročné bez jakéhokoliv přínosu pro pochopení algoritmů, a něčím, na čem se člověk učí. Jistě by šlo otevřít soubor klidně bez glibc, tedy nastudovat ABI, připravit data, vyvolat příslušný syscall a tak podobně. Přínos pro algoritmické myšlení tam ovšem nevidím ani v náznaku. Naopak (re)implementace něčeho jako std::set může programátora hodně obohatit. Pro vyhledávání v textu platí totéž.

    Jedním z dobrých rozlišovacích znaků mezi bezúčelnou duplikací knihoven a poučnou reimplementací zajímavého algoritmu může být portovatelnost. Otevření souboru nebude portovatelné ani z Linuxu na FreeBSD, zatímco my_great::set poběží všude možně, stejně jako Aho-Corasick.

    9.11.2013 10:05 potato
    Rozbalit Rozbalit vše Re: c++ hledani v textovem souboru
    S tím úplně souhlasím -- až na jednu věc. Viděl jsem dost vystudovaných informatiků ‚řešících‘ nějaký problém neuronovými sítěmi, genetickými algoritmy a pod., přičemž krachovali na neschopnosti otevřít soubor a přečíst z něj pole čísel. Takže ohledně důrazu čistě na techniky a algoritmy jsem trochu skeptický...
    9.11.2013 20:45 Andrej | skóre: 51 | blog: Republic of Mordor
    Rozbalit Rozbalit vše Re: c++ hledani v textovem souboru

    Existují například vystudovaní informatici, pro které je dobrá znalost POSIXového API, zkušenost s kernelovým programováním, znalost několika jazyků od C a C++ přes Javu až po Python a pár běžných vývojových nástrojů (gcc/clang, gdb, valgrind, KDevelop, JDK, Eclipse/IntelliJ, Git, SVN, ...) samozřejmostí, bez které si neumějí informatiku představit.

    Existují ovšem také „ti druzí informatici“, kteří nejsou o nic horší nebo lepší, o nic hloupější či chytřejší, ale podle mého názoru by si měli říkat spíš „matematici“. Zabývají se pouze teoretickými záležitostmi, získat jednoduchý projekt z repository je pro ně nepřekonatelný problém, desktopy jim musí instalovat správce sítě a v mém oblíbeném testu (napsat, přeložit a spustit Hello World v libovolném kompilovaném jazyce) by někteří neuspěli.

    Vědecký přínos takových teoretických informatiků může být v konečném součtu větší než v případě těch praktických. Problém ovšem může nastat, když se teoretici rozhodnou pracovat v industry, protože z hlediska praktických dovedností dělají někteří z nich „vystudovaným informatikům“ ostudu. :-)

    Tvorba efektivního a udržovatelného software vyžaduje z každé oblasti něco. Znalost algoritmů a jejich vlastností je nutné skloubit s technickými dovednostmi a se schopností srozumitelně formulovat problém. V tom je věda, řemeslo i umění zároveň.

    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.