Groups | Search | Server Info | Keyboard shortcuts | Login | Register
Groups > it.comp.os.linux.development > #52
| From | Giovanni <lsodgf0@home.net.it> |
|---|---|
| Newsgroups | it.comp.os.linux.development |
| Subject | Re: Usare o no lo stderr? |
| Date | 2017-06-10 12:18 +0200 |
| Organization | G.Falzoni Home Network |
| Message-ID | <ohgh2j$ltu$1@milena.home.net.it> (permalink) |
| References | <ohgc9s$1g7e$1@gioia.aioe.org> |
On 06/10/2017 10:57 AM, guido84 wrote:
> Usando la funzione strdup() con questo codice:
>
> ----------------------------------------
> // char *strdup(char *vettore_origine) -- Fuori standard ANSI
> #include <stdio.h>
> #include <string.h>
>
> int main(int argc, char **argv)
> {
> char *dest;
> ..............
>
> A questo punto, per evitare un'immissione che provocherebbe
> un sigfault, ho trovato due modi, potreste dirmi qual e' il
> migliore? (funzionano entrambi benissimo)
>
> --------------- PRIMO MODO -----------------
> if (argc == 1) // Se argv[1]=0 va in sigfault
> {
> printf("Usage: Duplica il vettore-stringa $1 in stdout \n");
> }
>
> else
> {
> dest = strdup(argv[1]);
> printf("%s\n", dest);
> }
> return 0;
> }
> -----------
>
> ================ SECONDO MODO ================
> #include <stdlib.h>
>
> if (argc == 1) // carica l'errore in stderror?
> {
> fprintf(stderr, "Usage: Duplica il vettore-stringa $1 in stdout \n");
> exit(1); // evita il sigfault?
> }
>
> dest = strdup(argv[1]);
> printf("%s\n", dest);
> return 0;
> }
> ==========
>
In genere 'stderr' si usa per i messaggi di errore per evitare che
vengano mescolati all'output del programma.
Molto spesso l'output di un programma รจ usato come input ad un altro ed
i messaggi di errore non sarebbero visibili o produrrebbero causare
errori anche nel programma che analizza l'output del primo.
PS: Mi spieghi che significa "$1" nella stringa che *dovrebbe* spiegare
l'uso del programma>
Ciao
Giovanni
--
A computer is like an air conditioner,
it stops working when you open Windows.
< http://giovanni.homelinux.net/ >
Back to it.comp.os.linux.development | Previous | Next — Previous in thread | Next in thread | Find similar
Usare o no lo stderr? guido84 <guido84@invalid.invalid> - 2017-06-10 08:57 +0000
Re: Usare o no lo stderr? Giovanni <lsodgf0@home.net.it> - 2017-06-10 12:18 +0200
Re: Usare o no lo stderr? guido84 <guido84@invalid.invalid> - 2017-06-10 10:33 +0000
Re: Usare o no lo stderr? Alessandro Pellizzari <shuriken@amiran.it> - 2017-06-10 15:52 +0100
Re: Usare o no lo stderr? guido84 <guido84@invalid.invalid> - 2017-06-10 16:56 +0000
Re: Usare o no lo stderr? Giuseppe Della Bianca <bepi.zac@zac.adria.it> - 2017-06-10 13:54 +0200
Re: Usare o no lo stderr? guido84 <guido84@invalid.invalid> - 2017-06-10 13:45 +0000
Re: Usare o no lo stderr? Alessandro Pellizzari <shuriken@amiran.it> - 2017-06-10 15:59 +0100
Re: Usare o no lo stderr? guido84 <guido84@invalid.invalid> - 2017-06-10 16:56 +0000
Re: Usare o no lo stderr? enoquick <enoquick@gmail.com> - 2017-06-10 20:39 -0500
Re: Usare o no lo stderr? guido84 <guido84@invalid.invalid> - 2017-06-11 09:16 +0000
Re: Usare o no lo stderr? enoquick <enoquick@gmail.com> - 2017-06-11 07:43 -0500
Re: Usare o no lo stderr? guido84 <guido84@invalid.invalid> - 2017-06-11 18:56 +0000
Re: Usare o no lo stderr? Alessandro Pellizzari <shuriken@amiran.it> - 2017-06-12 21:45 +0100
csiph-web