Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > it.comp.os.linux.development > #32

Re: Linea di comando per gcc

From guido84 <guido84@invalid.invalid>
Newsgroups it.comp.os.linux.development
Subject Re: Linea di comando per gcc
Date 2017-06-03 13:40 +0000
Organization Aioe.org NNTP Server
Message-ID <ogue8i$5vp$1@gioia.aioe.org> (permalink)
References (1 earlier) <ogt3q1$2co$1@virtdiesel.mng.cu.mi.it> <ogtmic$11ij$1@gioia.aioe.org> <epf7e0Fjuv0U1@mid.individual.net> <ogtsit$19vn$1@gioia.aioe.org> <60oa0e-a78.ln1@exnet.gdb.it>

Show all headers | View raw


Il 3/6/2017 14:51:49 Giuseppe Della Bianca scrisse:
>guido84 wrote:

>]zac[
>> Cosi', per evitare il $2 = terzo argomento della riga, ho tolto
>> la condizione e va perfettamente.
>]zac[

>E quello che hai ottenuto e di avere un programma pronto per un accesso
>fuori dalla memoria, hai presente i bug che usano i cracker per bucare i
>sistemi degli altri.

L'ho sentito dire, senza pero' capirlo. OK.

>Il vettore argv e' popolato in base hai parametri passati, il resto contiene
>dati non sicuri (dipende al contenuto della memoria in quel momento).

Capito.

>Prima di leggere argv bisogna controllare leggere argc per sapere il numero
>di item presenti in argv.

Capito.

>Nel tuo caso il test avrebbe dovuto essere argc == 2 o argc >= 2.

Perfetto, l'ho rifatto con argc == 2, non c'e' neppur bisogno di
dargli l'else, se metto $2 termina senza far nulla, con solo $1 da'
istantaneamente il logaritmo.
Lo testo con:
$ ./prova $(echo "e(2.77)" | bc -l)
e mi restituisce:
log(15.958634) = 2.770000

--------------
int main(int argc, char** argv)
{
double enne;
if (argc==2)
{
sscanf(argv[1], "%lf", &enne);
printf("\nlog(%lf) = %lf\n\n", enne, log(enne));
}
return 0;
}
------------

>E' vero che stai facendo un programma di prova, ma tieni conto che se non si
>tiene conto continuamente dei problemi di sicurezza e solidita', dopo che il
>programma e' cresciuto o si e' assunto uno stile di programmazione, e' molto
>difficile correggerlo e correggersi.

Si', questo dovro' tenerlo presente.

>P.S. Se non hai motivazione particolari per usare solo il C, e' saggio
>imparare il C++.
>Personalmente trovo uno spreco di tempo inutile doversi sempre preoccupare
>di puntatori, dimensione dei vettori, di stringhe, di strutture complesse,
>sfugge sempre qualcosa.

Sentimentalmente mi piaceva il C puro (come il kernel), ma
provero' il c++. E poi soprattutto pensavo fosse piu' difficile
invece da questo che dici sembra piu' facile o almeno piu' veloce
e meno impegnativo.

Ciao e grazie del reply!!

-- 
Saluti,
Guido

Back to it.comp.os.linux.development | Previous | NextPrevious in thread | Next in thread | Find similar


Thread

Linea di comando per gcc guido84 <guido84@invalid.invalid> - 2017-06-02 21:42 +0000
  Re: Linea di comando per gcc enoquick <enoquick@gmail.com> - 2017-06-02 20:36 -0500
    Re: Linea di comando per gcc guido84 <guido84@invalid.invalid> - 2017-06-03 06:56 +0000
      Re: Linea di comando per gcc Alessandro Pellizzari <shuriken@amiran.it> - 2017-06-03 08:39 +0100
        Re: Linea di comando per gcc guido84 <guido84@invalid.invalid> - 2017-06-03 08:38 +0000
          Re: Linea di comando per gcc Giuseppe Della Bianca <bepi.zac@zac.adria.it> - 2017-06-03 14:51 +0200
            Re: Linea di comando per gcc guido84 <guido84@invalid.invalid> - 2017-06-03 13:40 +0000
              Re: Linea di comando per gcc Giuseppe Della Bianca <bepi.zac@zac.adria.it> - 2017-06-04 12:04 +0200
          Re: Linea di comando per gcc Alessandro Pellizzari <shuriken@amiran.it> - 2017-06-03 14:38 +0100
            Re: Linea di comando per gcc guido84 <guido84@invalid.invalid> - 2017-06-03 14:13 +0000
      Re: Linea di comando per gcc enoquick <enoquick@gmail.com> - 2017-06-03 21:07 -0500
        Re: Linea di comando per gcc guido84 <guido84@invalid.invalid> - 2017-06-04 08:15 +0000

csiph-web