C++ i zmienne w linuxie

0

-jak w C++ storzyć zmienną środowiskową w linuxie i wyexportować ją ? hmm...
-jak odczytać/zapisać wartość z/do zmiennej już istniejącej w systemie ? hmm... --"Wniosek to punkt, w którym nie masz już siły dalej myśleć"

----- MCkawa -----
Delphi 6 / C / C++

0

int main(int argc, char **argv, char **env) {
}

// w tablicy env masz wszystkie zmienne srodowiskowe (tak jak w windoz (dos))

co do drugiego

system("export DUPA jakas_tam_wrrtosc");

nie jestem pewien bo nigdy tego nie robilem ale zobacz sobie jeszcze
man system
bo nie pamietam w jakim naglowku siedzi definicja tej funkcji

howgh
pozdrawiam
wojta$

0

wojtass napisał:
&gtsystem("export DUPA=jakas_tam_wrrtosc");

niestety nie działa... :( --"Wniosek to punkt, w którym nie masz już siły dalej myśleć"

----- MCkawa -----
Delphi 6 / C / C++

0

MCkawa napisał:
wojtass napisał:
&gt&gtsystem("export DUPA=jakas_tam_wrrtosc");
&gt
&gtniestety nie działa... :(
&gt

:-(
ale dlaczego chcesz tworzyc zmienne srodowiskowe z kodu C ???
to wydaje sie byc pozbawione sensu

:-) ale to moze dzialac tylko twoj program musi sobie stworzyc pseudo terminal i wtedy ta zmienna srodowiskowa bedzie osiagalna tylko dla tego terminala .
Programowanie pseudo terminali nieco wykracza poza mozliwosci prezentacji na forum . A w twoim przypadku nawet jezeli uda ci sie wyeksportowac jakas zmienna srodowiskowa to bedzie ona dostepna tylko dla terminala na ktorym uruchomiles swoj program - czyli to nie ma sensu

3maj sie
wojta$

0

wojtass napisał:
...ale to moze dzialac tylko twoj program musi sobie stworzyc pseudo terminal i...

to raczej (a nawet na pewno :-) ) przekracza moje możliwości.
hmmm... będe musiał to zrobić w Bashu :(

w każdym razie THX {browar}
--"Wniosek to punkt, w którym nie masz już siły dalej myśleć"

----- MCkawa -----
Delphi 6 / C / C++

0

OK, znalazłem odpowiednie funkcje które przedstawia poniższy przykładowy program
wczytuje zmienną i zmienia ją, ale po zakończeniu programu robie 'echo $HOME' i okazuje się że jest dalej taka jak przed uruchomieniem programu. Dlaczego ?
Czy ta funkcja zmienia zmienną tylko na czas działania programu a potem przywraca starą wartość?


#include &ltstdio.h&gt
#include &ltstdlib.h&gt

void main()
{
char *napis;
napis = getenv("HOME");
printf("katalog domowy: %s\n",napis);
putenv("HOME=/tmp");
napis = getenv("HOME");
printf("katalog domowy: %s\n",napis);
}
--------------------------------"Wniosek to punkt, w którym nie masz już siły dalej myśleć"

----- MCkawa -----
Delphi 6 / C / C++

1 użytkowników online, w tym zalogowanych: 0, gości: 1