Portál AbcLinuxu, 10. května 2025 08:07

Dotaz: c++ premenne

2.6.2011 15:45 ubka7617
c++ premenne
Přečteno: 375×
Odpovědět | Admin

Zdravim

urobil som si program ktory nacitava do dvojrozmerneho pola zoznam parametrov - premennych, spolu s hodnotami a mam aj bash skript ktoremu potrebujem podhodit tieto nazvy aj hodnoty a z toho skriptu nacitat nove hodnoty bez exportu hodnot do systemu.

za kazdu radu vopred dik.

Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

2.6.2011 16:12 rastos | skóre: 63 | blog: rastos
Rozbalit Rozbalit vše Re: c++ premenne
Odpovědět | | Sbalit | Link | Blokovat | Admin
Uh. Niekde tam chýba otáznik. Nie?

Tak si to rozoberieme
2.6.2011 22:04 Peter S.
Rozbalit Rozbalit vše Re: c++ premenne
Odpovědět | | Sbalit | Link | Blokovat | Admin
a čo takto uložiť data z c++ do textového súboru, prvý stlpec x, druhý y a potom čo ti treba, a v bashi to grepovať alebo použiť awk?

či to potrebuješ nejako "interaktívne"? Zo zadania to nie je celkom jasné..
David Watzke avatar 2.6.2011 22:58 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: c++ premenne
Co třeba to rovnou ukládat do souboru ve formátu nazev_promenne="hodnota_promenne" a potom na ten soubor zavolat source?
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
2.6.2011 23:15 Peter S.
Rozbalit Rozbalit vše Re: c++ premenne
zaleží aj od počtu tých premenných, milion 50-bytových suborov by som na disku nechcel mať...
2.6.2011 23:35 l4m4
Rozbalit Rozbalit vše Re: c++ premenne
Pokud potřebuješ v shellu nastavit (a tedy používat) milion proměnných, nebude toto nejspíš zdaleka tvůj největší problém. Takže hypotetické scénáře bych nechal stranou.
2.6.2011 23:47 Peter S.
Rozbalit Rozbalit vše Re: c++ premenne
:)

Teda aby nedošlo k omylu - nie ja som sa pýtal.

Iba hypoteticky som povedal, že mne osobne by sa toto riešenie pri veľkom počte súborov nepáčilo...
stativ avatar 3.6.2011 08:39 stativ | skóre: 54 | blog: SlaNé roury
Rozbalit Rozbalit vše Re: c++ premenne
Ale to by byl, pokud jsem Davida správně pochopil, jen jeden soubor obsahující všechny proměnné, ne jeden soubor pro každou proměnnou.
Ať sežeru elfa i s chlupama!!! ljirkovsky.wordpress.com stativ.tk
3.6.2011 08:56 ubka7617
Rozbalit Rozbalit vše Re: c++ premenne

ahojte,

v programe mam premennu napr. hodnota="cislo" va bash skripte by som mal: hodnota1=$printf("text-%05d",hodnota) v bashi by som mohol menit podmienky priradenia hodnot bez nutnosti zmeny zdrojoveho programu. a potrebujem hodnotu1 dostat do c++ programu aby ju vedel pouzivat.

je to jeden bash skript kde bude vyrabat hodnoty premennych na zaklade neakych podmienok.

Je mozne do premennej priradit priamo v c++ hodnotu vystupu z horneho printf alebo neako inak ?

David Watzke avatar 3.6.2011 11:14 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: c++ premenne
Tak, přečetl jsem si to 2x a zkusím ti odpovědět, snad je to to, na co se ptáš. Napadají mě dva způsoby, jak dostat proměnnou z Bashe do C++. 1) Uložit si ty hodnoty zase do souboru a z C++ je načíst. 2) Ukládat si to do proměnné prostředí a získávat to přes getenv(). To druhé tě ušetří dočasných souborů, ale podle mě je to hnojárna. Takže jak provést to uložení do souboru? Zjistíš, které všechny proměnné jsou definované - mají-li jednotný název hodnota%d, potom to lze pomocí
echo ${!hodnota*}
Takže bys je všechny vypsal takto
$ hodnota1=ahoj
$ hodnota2=zdar # případně hodnota2=$(printf bla bla..), to je jedno
$ for x in ${!hodnota*}; do
    echo "$x = ${!x}"
done
# vypíše:
hodnota1 = ahoj
hodnota2 = zdar
Pak už stačí výstup toho for cyklu přesměrovat do souboru.
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
3.6.2011 11:39 l4m4
Rozbalit Rozbalit vše Re: c++ premenne
3) Strčit ty věci jako arugmenty programu.

4) Poslat je programu na standardní vstup.
3.6.2011 13:35 ubka7617
Rozbalit Rozbalit vše Re: c++ premenne
nazvy vsetkych premennych mam v dalsom subore kde je jeden riadok jedna premenna. Podhodenie na vstup mam na urovni c++ export vyskusam na urovni bashu
3.6.2011 14:46 ubka7617
Rozbalit Rozbalit vše Re: c++ premenne
uz mi to ide podla predstav. dakujem vsetkym za pomoc
David Watzke avatar 3.6.2011 11:02 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: c++ premenne
Přesně, proč by to sakra někdo ukládal po 1 proměnný? :-D
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.