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 12:55 | Nová verze

    CiviCRM (Wikipedie) bylo vydáno v nové verzi 6.14.0. Podrobnosti o nových funkcích a opravách najdete na release stránce. CiviCRM je robustní open-source CRM systém navržený speciálně pro neziskové organizace, spolky a občanské iniciativy. Projekt je napsán v jazyce PHP a licencován pod GNU Affero General Public License (AGPLv3). Český překlad má nyní 45 % přeložených řetězců a přibližuje se milníku 50 %. Potřebujeme vaši pomoc, abychom se dostali dál. Pokud máte chuť přispět překladem nebo korekturou, přidejte se na platformu Transifex.

    jardaIT | Komentářů: 0
    dnes 12:22 | Bezpečnostní upozornění

    Další lokální zranitelností Linuxu je ssh-keysign-pwn. Uživatel si může přečíst obsah souborů, ke kterým má právo ke čtení pouze root, například soubory s SSH klíči nebo /etc/shadow. V upstreamu již opraveno [oss-security mailing list].

    Ladislav Hagara | Komentářů: 0
    včera 17:22 | Komunita

    Singularity (YouTube) je nejnovější otevřený film od Blender Studia. Jedná se o jejich první 4K HDR film.

    Ladislav Hagara | Komentářů: 0
    včera 16:55 | Zajímavý software

    Vyšla hra Život Není Krásný: Poslední Exekuce (Steam, ProtonDB). Kreslená point & click adventura ze staré školy plná černého humoru a nekorektního násilí. Vžijte se do role zpustlého exekutora Vladimíra Brehowského a projděte s ním jeho poslední pracovní den. Hra volně navazuje na sérii Život Není Krásný.

    Ladislav Hagara | Komentářů: 21
    včera 14:00 | Zajímavý projekt

    Společnost Red Hat představila Fedora Hummingbird, tj. linuxovou distribuci s nativním kontejnerovým designem určenou pro vývojáře využívající AI agenty.

    Pinhead | Komentářů: 6
    včera 02:22 | Zajímavý software

    Hru The Legend of Zelda: Twilight Princess od společnosti Nintendo si lze nově díky projektu Dusklight (původně Dusk) a reverznímu inženýrství zahrát i na počítačích a mobilních zařízeních. Vyžadována je kopie původní hry (textury, modely, hudba, zvukové efekty, …). Ukázka na YouTube. Projekt byl zahájen v srpnu 2020.

    Ladislav Hagara | Komentářů: 0
    včera 01:11 | Nová verze

    Byla vydána nová major verze 29.0 programovacího jazyka Erlang (Wikipedie) a související platformy OTP (Open Telecom Platform, Wikipedie). Detailní přehled novinek na GitHubu.

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

    Po zranitelnostech Copy Fail a Dirty Frag přichází zranitelnost Fragnesia. Další lokální eskalace práv na Linuxu. Zatím v upstreamu neopravena. Přiřazeno ji bylo CVE-2026-46300.

    Ladislav Hagara | Komentářů: 1
    13.5. 14:00 | Komunita

    Sovereign Tech Agency (Wikipedie) prostřednictvím svého fondu Sovereign Tech Fund podpoří KDE částkou 1 285 200 eur.

    Ladislav Hagara | Komentářů: 10
    13.5. 12:55 | IT novinky

    Google na včerejší akci The Android Show | I/O Edition 2026 (YouTube) představil celou řadu novinek: Gemini Intelligence, notebooky Googlebook, novou generaci Android Auto, …

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (13%)
     (8%)
     (2%)
     (14%)
     (31%)
     (4%)
     (6%)
     (3%)
     (16%)
     (26%)
    Celkem 1630 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník

    Dotaz: C++ - vystup do kódu?

    17.5.2006 22:00 pyty | skóre: 4 | Bardejov
    C++ - vystup do kódu?
    Přečteno: 117×
    Potreboval by som vytvorit napr. 1000 poloziek v jednom poli - to "napr." píšem preto, lebo to bude definované uživaťeľom - a v tom je práve problém. Jedíny spôsob ktorý ma napadá je uložiť výstup do súboru, a potom ho nejako znova načítať, ale nechcem k tomu používať ešte iné súbory. Existuje pre Cpp nejaka taka funkcia alebo podobna fintička? Teda aby som mohol pomocou nejakeho cyklu vpísať tie polia akokeby do samotného kódu. V PHP myslím na niečo podobné slúži eval(), teda ak sa nemýlim.
    Don't let the system get you down...

    Odpovědi

    17.5.2006 22:13 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: C++ - vystup do kódu?
    Bohužel jsem absolutně nepochopil, co vlastně potřebujete. Zkuste to ještě jednou, srozumitelněji.
    Ondrej avatar 17.5.2006 22:13 Ondrej | skóre: 20 | blog: darkblair_server | Praha
    Rozbalit Rozbalit vše Re: C++ - vystup do kódu?
    A nebylo by jednodussi udelat vstup do promenny a potom to pole dekalrovat jako pole[velikost] kde velikost je ta promenna? nevim jestli to takhle v C++ jde ale v C# i jinde to neni problem a pochybuju ze by v c++ byl.
    Nikdo neni nikdy lepsi nez ty! Pouze ty jsi obcas horsi nez ostatni.
    Jan Zahornadsky avatar 17.5.2006 22:16 Jan Zahornadsky | skóre: 22 | blog: hans_blog
    Rozbalit Rozbalit vše Re: C++ - vystup do kódu?
    Toto se nepřeloží. U výrazů typu int pole[x] musí být x konstantní výraz (spočitelný za překladu). To, že je C# napůl interpretovaný jazyk je věc jiná :-P
    Actually, I was half an hour into the pointer scripting documentation when she got dressed and left.
    17.5.2006 22:19 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: C++ - vystup do kódu?
    Když už výslovně zmiňujete C++, tak proč nenapíšete prostě
      int* p = new int[n];
    
    nebo rovnou nepoužijete std::vector?
    17.5.2006 22:49 Tomáš | skóre: 25 | Ústí nad Labem
    Rozbalit Rozbalit vše Re: C++ - vystup do kódu?
    Toto však také není pravda, v C++ tento kód normálně funguje:
    #include <iostream>>
    
    using namespace std;
    
    int main() {
            int velikost;
    
            cout << "Zadejte velikost: ";
            cin >> velikost;
    
            int pole[velikost];
    
            for(int i = 0; i < velikost; ++i) {
                    cout << (i+1) << ". hodnota: ";
                    cin >> pole[i];
            }
    
            cout << "Vypis:" << endl;
    
            for(int i = 0; i < velikost; ++i) {
                    cout << (i+1) << ". hodnota: " << pole[i] << endl;
            }
    
            return 0;
    }
    viz:
    $ ./pole
    Zadejte velikost: 3
    1. hodnota: 7
    2. hodnota: 5
    3. hodnota: 2
    Vypis:
    1. hodnota: 7
    2. hodnota: 5
    3. hodnota: 2
    gcc version 3.3.5 (Debian 1:3.3.5-13)
    Luboš Doležel (Doli) avatar 17.5.2006 22:54 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
    Rozbalit Rozbalit vše Re: C++ - vystup do kódu?
    To je zvláštní. Matně si vzpomínám, že mi tohle u MSVC++ nikdy neprošlo.

    Tady to funguje, dokonce včetně sizeof...
    17.5.2006 23:22 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: C++ - vystup do kódu?
    Zajímavé, GCC 4.0 to akceptuje i u klasického C, nejen C++, dokonce i s '-std=c99 -Wall'. Že bych prozkoumal ty pokoutně stažené drafty norem?
    Jan Zahornadsky avatar 17.5.2006 23:27 Jan Zahornadsky | skóre: 22 | blog: hans_blog
    Rozbalit Rozbalit vše Re: C++ - vystup do kódu?
    Díky za informaci, zajímavé. Omlouvám se za mystifikaci...
    Actually, I was half an hour into the pointer scripting documentation when she got dressed and left.
    18.5.2006 08:42 springer | skóre: 10 | blog: engineering
    Rozbalit Rozbalit vše Re: C++ - vystup do kódu?
    s -ansi -pedantic to nejde
    kralovna Alzbeta a Stallmanuv holic diskutuji free software
    18.5.2006 11:44 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: C++ - vystup do kódu?
    Tak pokoutně stažený draft normy říká toto:

    1. In addition to optional type qualifiers and the keyword static, the [ and ] may delimit an expression or *. If they delimit an expression (which specifies the size of an array), the expression shall have an integer type. If the expression is a constant expression, it shall have a value greater than zero. The element type shall not be an incomplete or function type. The optional type qualifiers and the keyword static shall appear only in a declaration of a function parameter with an array type, and then only in the outermost array type derivation.

    2. Only an ordinary identifier (as defined in 6.2.3) with both block scope or function prototype scope and no linkage shall have a variably modified type. If an identifier is declared to be an object with static storage duration, it shall not have a variable length array type.

    Je ale pravděpodobné, že možnost deklarovat velikost pole výrazem, který není vyhodnotitelný při kompilaci, se objevila až v pozdějších verzích jazyka.
    Jan Zahornadsky avatar 17.5.2006 22:14 Jan Zahornadsky | skóre: 22 | blog: hans_blog
    Rozbalit Rozbalit vše Re: C++ - vystup do kódu?
    C++ je kompilovaný jazyk, takže eval přichází v úvahu jen omezeně, jestli vůbec má někdo náladu se s tím piplat (a navíc není zaručeno, že se evalované řetězce budou chovat jinak než původní kompilátor).

    Ale nevidím k tmu žádný důvod. Pokud Chceš vytvořit pole dlouhé tak, jak si uživatel zadá (nebo cokoli jiného spočte), užij dynamickou alokaci:

    int velikost; int *pole;

    velikost = rand() % 1000; pole = new int[velikost];

    // pracuji s polem

    delete [] pole;
    Actually, I was half an hour into the pointer scripting documentation when she got dressed and left.
    17.5.2006 22:35 pyty | skóre: 4 | Bardejov
    Rozbalit Rozbalit vše Re: C++ - vystup do kódu?
    Dik, asi sa na vstup uživateľa vykašlem :) Ale aj tak by som to potreboval do kodu prijamo "naprogramovať". Keď sa dobre pamätám, malo by sa to dať ked dám pred kód # a teda to ešte spracuje preprocesor (zrejme pred kompiláciou).. Ako to funguje? To musím dať pred každý riadok # ? A môžem používať kompletnú syntax C++ ?
    Don't let the system get you down...
    17.5.2006 22:39 hm
    Rozbalit Rozbalit vše Re: C++ - vystup do kódu?
    Proč neprogramujete v jazyku, který ovládáte (což C++ není, jinak byste se takhle neptal)?
    17.5.2006 22:44 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: C++ - vystup do kódu?
    Proč nenapíšete, čeho vlastně chcete docílit? Mám neodbytný pocit, že to, co potřebujete, se dá daleko snadněji realizovat jinak, než krkolomnými (a víceméně neproveditelnými) konstrukcemi, o kterých mluvíte.
    17.5.2006 22:47 VB
    Rozbalit Rozbalit vše Re: C++ - vystup do kódu?
    jak uz kolega vyse zminoval.
    std::vector(JE_MENSI)vas_typ(JE_VETSI) jmeno_promene
    
    pole je potom samonafukovaci pokud pouzijete 
    
    jmeno_promene.push_back(value);
    jmeno_promene.insert(value);
    
    nebo jako klasicke pole:
    
    if (! (index < jmeno_promene.size()) )
      jmeno_promene.resize(index+1);
    jmeno_promene[index] = value;
    
    prochazet pole pak pomoci iteratoru
    
    vice o STL na www.builder.cz nebo primo sgi.com.

    je to rychle, elegantni a zpravidla dobre optimalizovane.

    VB
    18.5.2006 08:19 ondra
    Rozbalit Rozbalit vše Re: C++ - vystup do kódu?
    Pokud potřebujete používat něco na způsob eval ze skriptovacích jazyků, tak obecně je asi nejjednodušší buď to napsat v nějakém skriptovacím jazyce nebo ten skriptovací jazyk zabudovat do C/C++ aplikace, což třeba se swigem není vůbec těžké.

    Ale jestli se jedná opravdu jenom o nějaká dynamická pole, tak výše zmíněné STL je naprosto jasná volba.
    elviin avatar 18.5.2006 09:03 elviin | skóre: 29 | blog: elviin | Plzeň-Praha
    Rozbalit Rozbalit vše Re: C++ - vystup do kódu?
    To mi prijde komicky a zaroven i pekny, jak se tolik lidi snazi nekomu pomoci, obrazne dokopat k reseni. A ten nekdo zaroven absolutne nema sajn, jak to udelat:) A pak se rika, ze se lidi na forech nechtej venovat otrepanym problemum.
    18.5.2006 10:43 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
    Rozbalit Rozbalit vše Re: C++ - vystup do kódu?
    A ten nekdo zaroven absolutne nema sajn, jak to udelat:)
    To není ten problém, kdyby to věděl, tak se neptá. Potíž je v tom, že my ani nevíme co chce vlastně udělat.
    Popište příznaky problému, nikoli vlastní dohady
    Jak se správně ptát
    V tomto případě platí na 110%.
    When your hammer is C++, everything begins to look like a thumb.
    18.5.2006 14:51 podlesh | skóre: 38 | Freiburg im Breisgau
    Rozbalit Rozbalit vše Re: C++ - vystup do kódu?
    Existují případy, kdy má dynamické generování kódu smysl. Ty ale tvoří tak maximálně 1% (jediné co mě napadá jsou ochrany proti cracknutí a AOP). Zbylých 99% patří na www.thedailywtf.com (pár zajímavých příkladů tam je, hlavně v Javascriptu, PHP a SQL/PL).
    18.5.2006 15:24 Michal
    Rozbalit Rozbalit vše Re: C++ - vystup do kódu?
    Hmm, ja jsem to popravde nedavno delal. Potreboval jsem v c# vycislovat funkci zadanou uzivatelem. C# umi zkompilovat za behu kus kodu klidne i umisteneho v retezci a pak ho pripojit k bezicimu programu. Prislo mi to jak o docela schudne reseni. Urcite lepsi nez psat pul roku parser a vyhodnocovac vyrazu co disponuje silou toho, co je obsazeno v prekladaci...

    Dale se skladani kodu za behu dela bezne ve video kodecich coz prinasi nezanedbatelne urychleni protoze se "vyrobi" za behu kodek presne pro dany pripad a nemusi se kod porad vetvit v zavislosti jaky se zrovna pouziva barevny model atd. Je tam proste prilis hodne kombinaci.

    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.