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í
×
včera 02:20 | Zajímavý článek

David Revoy, autor open source webového komiksu Pepper&Carrot nebo portrétu GNU/Linuxu, upozorňuje na svém blogu, že nový Inkscape 0.92 rozbíjí dokumenty vytvořené v předchozích verzích Inkscape. Problém by měl být vyřešen v Inkscape 0.92.2 [reddit].

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

Øyvind Kolås, hlavní vývojář grafických knihoven GEGL a babl, které využívá grafický program GIMP, žádá o podporu na Patreonu. Díky ní bude moci pracovat na vývoji na plný úvazek. Milník 1000 $, který by stačil na holé přežití, se již téměř podařilo vybrat, dalším cílem je dosažení 2500 $, které mu umožní běžně fungovat ve společnosti.

xkomczax | Komentářů: 12
21.1. 23:54 | Pozvánky

DevConf.cz 2017, již devátý ročník jedné z největších akcí zaměřených na Linux a open source ve střední Evropě, proběhne od pátku 27. ledna do neděle 29. ledna v prostorách Fakulty informačních technologií Vysokého učení technického v Brně. Na programu je celá řada zajímavých přednášek a workshopů. Letos je povinná registrace.

Ladislav Hagara | Komentářů: 0
21.1. 22:11 | Nová verze

Byla vydána verze 1.0.0 emulátoru terminálu Terminology postaveného nad EFL (Enlightenment Foundation Libraries). Přehled novinek v poznámkách k vydání.

Ladislav Hagara | Komentářů: 0
20.1. 17:00 | Nová verze

Byl vydán Docker 1.13. Přehled novinek na YouTube a v poznámkách k vydání na GitHubu. Docker umožňuje běh aplikací v softwarových kontejnerech (Wikipedia).

Ladislav Hagara | Komentářů: 4
20.1. 15:51 | Komunita

Mozilla.cz informuje, že nástroje pro webové vývojáře se možná oddělí od Firefoxu a stanou doplňkem. Nástroje pro webové vývojáře prošly velkým přepisem a tým, který se stará o jejich vývoj, by uvítal možnost jejich častějších aktualizacích nezávisle na vydávání nových verzí Firefoxu.

Ladislav Hagara | Komentářů: 10
20.1. 07:00 | Humor

Čtenářům AbcLinuxu vše nejlepší k dnešnímu Dni zvýšení povědomí o tučňácích (Penguin Awareness Day).

Ladislav Hagara | Komentářů: 0
20.1. 06:00 | Komunita

Bylo spuštěno hlasování o přednáškách a workshopech pro letošní InstallFest, jenž proběhne o víkendu 4. a 5. března v Praze. Současně byla oznámena změna místa. InstallFest se letos vrací zpět na Karlovo náměstí do budovy E.

Ladislav Hagara | Komentářů: 0
20.1. 02:48 | Komunita

Greg Kroah-Hartman potvrdil, že Linux 4.9 je jádrem s prodlouženou upstream podporou (LTS, Long Term Support). Podpora je plánována do ledna 2019. Aktuální jádra s prodlouženou podporou jsou tedy 3.2, 3.4, 3.10, 3.12, 3.16, 3.18, 4.1, 4.4 a 4.9.

Ladislav Hagara | Komentářů: 0
20.1. 00:11 | Zajímavý článek

Výrobce síťových prvků, společnost Netgear, spustila nový program, který slibuje vývojářům, expertům, ale i běžným uživatelům vyplacení finanční odměny za nalezení bezpečnostních chyby v jejich produktech. Za nalezení zranitelnosti v hardware, API nebo mobilní aplikaci nabízí odměnu od 150 do 15 tisíc dolarů (dle závažnosti).

Michal Makovec | Komentářů: 0
Jak se stavíte k trendu ztenčování přenosných zařízení (smartphony, notebooky)?
 (10%)
 (2%)
 (74%)
 (3%)
 (10%)
Celkem 363 hlasů
 Komentářů: 25, poslední 21.1. 13:34
Rozcestník
Reklama

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

17.5.2006 22:00 pyty | skóre: 4 | Bardejov
C++ - vystup do kódu?
Přečteno: 43×
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 | Praha
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.