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 13:11 | Nová verze

    Bylo vydáno OpenBSD 7.8. S předběžnou podporou Raspberry Pi 5. Opět bez písničky.

    Ladislav Hagara | Komentářů: 0
    dnes 05:44 | Nová verze Ladislav Hagara | Komentářů: 2
    dnes 05:22 | Bezpečnostní upozornění

    Byly publikovány informace o kritické zranitelnosti v knihovně pro Rust async-tar a jejích forcích tokio-tar, krata-tokio-tar a astral-tokio-tar. Jedná se o zranitelnost CVE-2025-62518 s CVSS 8.1. Nálezci je pojmenovali TARmageddon.

    Ladislav Hagara | Komentářů: 1
    včera 23:15 | Nová verze

    AlmaLinux přinese s verzí 10.1 podporu btrfs. XFS bude stále jako výchozí filesystém, ale instalátor nabídne i btrfs. Více informací naleznete v oficiálním oznámení.

    Max | Komentářů: 1
    včera 22:33 | IT novinky

    Společnost OpenAI představila svůj vlastní webový prohlížeč ChatGPT Atlas. Zatím je k dispozici pouze na macOS.

    Ladislav Hagara | Komentářů: 0
    včera 14:33 | Nová verze

    Desktopové prostředí KDE Plasma bylo vydáno ve verzi 6.5 (Mastodon). Přehled novinek i s videi a se snímky obrazovek v oficiálním oznámení. Podrobný přehled v seznamu změn.

    Ladislav Hagara | Komentářů: 3
    včera 13:55 | IT novinky

    Rodina jednodeskových počítačů Orange Pi se rozrostla (𝕏) o Orange Pi 6 Plus.

    Ladislav Hagara | Komentářů: 6
    včera 13:33 | IT novinky

    Na Humble Bundle běží akce Humble Tech Book Bundle: All Things Raspberry Pi by Raspberry Pi Press. Se slevou lze koupit elektronické knihy od nakladatelství Raspberry Pi Press a podpořit Raspberry Pi Press, Raspberry Pi Foundation North America nebo Humble.

    Ladislav Hagara | Komentářů: 0
    včera 11:44 | Humor

    Přidaný režim autonomního řízení vozidel Tesla Mad Max je dostupný pro vybrané zákazníky v programu EAP (Early Access Program). Nový režim je na silnici agresivnější, častěji mění pruhy a ne vždy dodržuje rychlostní limity. Agentura JPP spekuluje, že v Česku by se mohl nový režim namísto Mad Max jmenovat Mad Turek...

    karkar | Komentářů: 24
    včera 04:00 | Nová verze

    Byla vydána nová verze 9.18 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. Nově také pro NanoPi R3S, R3S LTS, R76S a M5. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    Jaké řešení používáte k vývoji / práci?
     (37%)
     (48%)
     (20%)
     (20%)
     (22%)
     (18%)
     (20%)
     (18%)
     (18%)
    Celkem 254 hlasů
     Komentářů: 14, poslední 14.10. 09:04
    Rozcestník

    Dotaz: Jak pracovat s env proměnnými v C programu?

    30.10.2006 17:30 Ctirad Feřtr | skóre: 43 | Praha
    Jak pracovat s env proměnnými v C programu?
    Přečteno: 142×
    Zdravím,

    nějak se mi to nedaří. Funkce putenv() ani setenv() mi nic nevytvoří ani nezmění hodnotu existující proměnné. Podle návratové hodnoty je všechno v pořádku. Co dělám špatně?

    Odpovědi

    michich avatar 30.10.2006 17:37 michich | skóre: 51 | blog: ohrivane_parky
    Rozbalit Rozbalit vše Re: Jak pracovat s env proměnnými v C programu?
    Nezapomínáte náhodou na to, že můžete měnit prostředí pouze pro aktuální proces a případně jeho potomky?
    30.10.2006 18:31 Ctirad Feřtr | skóre: 43 | Praha
    Rozbalit Rozbalit vše Re: Jak pracovat s env proměnnými v C programu?
    V tom je nejspíš právě zakopaný pes. Mám skript (ten už sám o sobě nastaví pár proměnných), z toho je spuštěný základní program v C a ten si průběžně spouští několik pomocných skriptů, které zase volají další programy. Potřeboval bych nějak zařídit, aby všechny tyto programy a skripty měly přístup k několika proměnným a mohli přenastavovat jejich hodnoty. Jde to vůbec?
    30.10.2006 18:49 zabza | skóre: 52 | blog: Nad_sklenkou_cerveneho
    Rozbalit Rozbalit vše Re: Jak pracovat s env proměnnými v C programu?
    Nemůžete měnit promměnou nadřazeného (volajícího) procesu. Můžete si to představit tak, že každý proces má svoji kopii proměnné, kterou může měnit.
    Luboš Doležel (Doli) avatar 30.10.2006 17:38 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
    Rozbalit Rozbalit vše Re: Jak pracovat s env proměnnými v C programu?
    #include <stdlib.h>
    
    int main()
    {
            setenv("test", "value", 1);
            printf("Value of test is %s\n", getenv("test"));
            return 0;
    }
    
    $ ./test
    Value of test is value
    
    30.10.2006 18:34 Ctirad Feřtr | skóre: 43 | Praha
    Rozbalit Rozbalit vše Re: Jak pracovat s env proměnnými v C programu?
    Díky za ochotu, tohle samozřejmě umím a je to v manu. Mě jde o to, jak to v jednom programu zapsat a ve druhém programu (nebo skriptu) přečíst a naopak.
    30.10.2006 20:12 cynik
    Rozbalit Rozbalit vše Re: Jak pracovat s env proměnnými v C programu?
    Pochopil jsem to tak, ze promene prostredi se vzdycky vytvari pro kazdy novy proces (nebo subproces) kopii z tech stavajicich a po skonceni procesu tedy zaniknou.

    Procesy proto navzajem mohou komunikovat i jinak. Napadaji me tyhle moznosti: pres soubor, pres pipu, pres sdilenou pamet. Pokud jde o soubory, neni to zase az tak spatna cesta, akorat je to trochu pomalejsi, ale zase se daji prenaset velky objemy dat. Pipa (socket) je dobra, kdyz spolu maji komunikovat dva nezavysle procesy, treba s jinymi pravy, v chrootu, na jinych pocitacich. Sdilena pamet je takova lepsi nahrada environmentalnich prostredi, avsak je pomerne nebezpecne s ni pracovatm hlavne proto, ze obvykle se jen vytvori a nikdo uz ty zbytecne alokovane kusy pameti nemaze (vyjma restartu systemu).
    Josef Kufner avatar 31.10.2006 00:55 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Jak pracovat s env proměnnými v C programu?
    Sdilena pamet neni spatna, jen je proste potreba si dat pozor na synchronizaci a uklid.

    Celkem fajn je taky obyčejný unixový socket. Jeden server, spousta klientů, obousměrná komunikace na jedno filedescriptoru.

    Pipa muže být i pojmenovaná (v podobě souboru ve filesystému).

    Pak jsou tu ještě fronty zpráv (podle posixu), ale s těma jsem se nějak ještě nezabýval.

    Záleží na tom, co chceš předávat za data a co máš za programy, co to má dělat.
    Hello world ! Segmentation fault (core dumped)

    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.