Salve, sono ancora qua, stavo provando a scrivere un programma che ritornasse la somma dei numeri passati al programma alla chiamata del main, per spiegarmi meglio, lanciando il programma così:

somma 5 6

il programma dovrebbe ritornare 11, questo è il programma che ho scritto:

int main(int argc, char *argv[]){
    int somma = 0;
    for(int i=1; i<argc; i++){
        somma+=argv[i];
        }
    return somma;
    }

ma ovviamente mi dice che è impossibile la conversione da chat to int:

somma.cpp:8:16: error: invalid conversion from ‘char*’ to ‘int’ [-fpermissive]

come posso risolvere?

chiesto 08 Jan '17, 13:18

carru93's gravatar image

carru93
28447


C'è una funzione in stdlib.h per convertire una stringa in un intero, e si chiama atoi, quindi devi fare

somma += atoi(argv[i]);
coll. permanente

ha risposto 08 Jan '17, 20:00

enzotib's gravatar image

enzotib ♦♦
14.1k113187

La tua risposta
abilita/disabilita anteprima

Segui questa domanda

Via email:

Una volta eseguito l'accesso potrai iscriverti a tutti gli aggiornamenti qui

Via RSS:

Risposte

Risposte e commenti

Basi di markdown

  • *corsivo* o __corsivo__
  • **grassetto** o __grassetto__
  • collegamento:[testo](http://url.com/ "titolo")
  • immagine?![alt testo](/path/img.jpg "titolo")
  • elenco numerato: 1. Foo 2. Bar
  • per aggiungere un'interruzione di riga, aggiungi due spazi a fine riga e premi «Invio»
  • è supportato anche semplice HTML

Tag:

×109
×36

domanda posta: 08 Jan '17, 13:18

domanda visualizzata: 2,246 volte

ultimo aggiornamento: 08 Jan '17, 20:00

Chiedi è un servizio di supporto gestito da Ubuntu-it. Contattaci!

powered by OSQAPostgreSQL database
Ubuntu e Canonical sono marchi registrati da Canonical Ltd.