Article View: pl.comp.lang.c
Article #792Re: argv
From: Qrczak
Date: Wed, 28 Jan 1998 13:48
Date: Wed, 28 Jan 1998 13:48
44 lines
2493 bytes
2493 bytes
On Wed, 28 Jan 1998, Maciej MOCHOL wrote:
> Az sie cofnalem do poczatku. Moim zdaniem zalezy to od implementacji
> systemu. Nawet w Unixach jest to roznie zrobione, bo np. w Unixware:
>
> /* argc = 1 */
>
> int i = strlen(argv[1])
>
> /* i = 0 */
>
> przechodzi bez problemu, natomiast w Linuxie jest core dumped ... (
> argv[1] = NULL)
To jest inna sprawa - tutaj chodzi o sięganie poza zakres tablicy!
A mnie chodzi tylko o to, czy argv[1][1], o ile istnieje, jest
read-only, czy nie.
Gdyby było typu (const char *const *) (chyba tam mają być te consty...),
toby nie było problemu, ale być może wtedy, kiedy ta składnia była
ustalana, constów w ogóle nie było, a potem nikomu nie chciało się
zmieniać - być może bredzę, ale po prostu NIE WIEM.
> Sadze ze na wiekszosci platform mozna spokojnie pisac do argv, bo
> w Unixach parametry wywolania trzymane sa w informacjach o procesie,
> w dosie siedzi to w environment. Jednak sa maszyny w ktorych pamiec
> mozna ustawic w tryb read-only, jestem przekonany ze wtedy by to nie
> przeszlo.
No więc wciąż nikt nie potrafi mi odpowiedzieć, czy wszędzie można, czy
też czasem nie...
> Nasuwa mi sie jednak jedno pytanie, po jakiego groma pisac do argv ?
Np. żeby pozamieniać "\\n" na "\n" itd. W praktyce najczęściej większość
argumentów w ogóle się nie zmieni, a te, które się zmienią, najwyżej się
skrócą. Po co mam tworzyć własną tablicę, do której będę je kopiował z
niewielkimi zmianami, jeśli się okaże, że można poprawić w miejscu?
--
QRCZAK
__("< Marcin Kowalczyk
\__/ qrczak@knm.org.pl
^^ http://qrczak.home.ml.org/
Technical Details
Message-ID:
<Pine.LNX.3.96.980128143946.553A-100000@qrnik.knm.org.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!news.icm.edu.pl!qrnik.knm.org.pl!qrnik.knm.org.pl!qrczakReferences:
<Pine.LNX.3.96.980118170312.17197A-100000@qrnik.knm.org.pl> <Pine.GSO.3.95.980128123942.7883M-100000@neutron.elka.pw.edu.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!news.icm.edu.pl!qrnik.knm.org.pl!qrnik.knm.org.pl!qrczak From: Qrczak <qrczak@knm.org.pl> Newsgroups: pl.comp.lang.c Subject: Re: argv Date: Wed, 28 Jan 1998 14:48:59 +0100 Organization: Klub Nieszkodliwych Manjaków Lines: 45 Message-ID: <Pine.LNX.3.96.980128143946.553A-100000@qrnik.knm.org.pl> References: <Pine.LNX.3.96.980118170312.17197A-100000@qrnik.knm.org.pl> <Pine.GSO.3.95.980128123942.7883M-100000@neutron.elka.pw.edu.pl> NNTP-Posting-Host: ppp3-cst39.warszawa.tpnet.pl Mime-Version: 1.0 In-Reply-To: <Pine.GSO.3.95.980128123942.7883M-100000@neutron.elka.pw.edu.pl> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit