PDA

Visualizza la versione completa : [C++] I miei dubbi su questo linguaggio


paperino00
04-11-2010, 21:28
Salve, sapete a cosa serve la funzione return? su internet ho cercato ma non ho capito molto.
Ho provato a compilare questi due semplicissimi programmi con lo stesso risultato, e mi chiedevo a cosa serve return e cosa ? se al posto di 0 in return gli metto 1 cosa cambia?
qua a cosa sere ritornare qualcosa se deve solo fare apparire una frase?
ho letto che void non richiede un return ma allora a che serve?
la funzione main obbligatoria in tutti i programmi?


#include <iostream>
int main()
{
std::cout << ("Ciao");
}


#include <iostream>
int main()
{
std::cout << ("Ciao");
return 0; //mettendogli 1 mi sembra che non cambia niente
}

Grazie!!

EDX
04-11-2010, 21:34
In generale, return serve ad una funzione a ritornare un valore al chiamante, nel caso di una funzione main, il valore del return serve ad informare il SO dell'esito del programma, un 0 come valore di ritorno solitamente dice che l'esecuzione andata a buon fine.

La funzione main usata come entry point nei programmi scritti in C o C++, la funzione da cui il programma inizia, quindi obbligatoria.

MdE2005
04-11-2010, 22:13
Tipico esempio:

int Somma (int a1, int a2){
return a1+a2
}


Spero di aver reso l'idea..


Ciao :)

MItaly
04-11-2010, 23:14
Per inciso, return un'istruzione, non una funzione.

MdE2005
04-11-2010, 23:42
Originariamente inviato da MItaly
Per inciso, return un'istruzione, non una funzione.

Certo, e il caso tipico di uso di questa istruzione all'interno di una funzione per restituire un valore.


Ciao :)

MItaly
04-11-2010, 23:43
Originariamente inviato da MdE2005
Certo, e il caso tipico di uso di questa istruzione all'interno di una funzione per restituire un valore.


Ciao :)
Sono stato poco chiaro, ovviamente non dicevo a te (che lo sai sicuramente :) ), era in relazione alla prima frase del post iniziale:

Salve, sapete a cosa serve la funzione return?

:ciauz:

MdE2005
05-11-2010, 00:11
Originariamente inviato da MItaly
Sono stato poco chiaro, ovviamente non dicevo a te (che lo sai sicuramente :) ), era in relazione alla prima frase del post iniziale:


:ciauz:


Ah, scusa..ho frainteso.. :bh:


Ciao e buona serata :)

paperino00
14-11-2010, 19:36
ma se return 0 significa che andato a buon fine, allora perch se gli metto 1 apparentemente non cambia niente?
Con il c++ possibile realizzare applicazioni per cellulari?
e creare applicazioni web (tipo quelle scritte in java) ?

adrycast
14-11-2010, 20:04
Originariamente inviato da paperino00
ma se return 0 significa che andato a buon fine, allora perch se gli metto 1 apparentemente non cambia niente?
Con il c++ possibile realizzare applicazioni per cellulari?
e creare applicazioni web (tipo quelle scritte in java) ?

Il fatto che non cambi quello che vedi non vuol dire che non cambi niente..non so dirtelo con esattezza ma ci sono determinate cose che potresti fare in C++ che magari rischierebbero di intasarti il programma con un return 1 piuttosto che un return 0...comunque in generale puoi mettere anche




return EXIT_SUCCESS



Con il C++ proprio no, ma con Objective-C si...sarebbe, se non erro, un linguaggio ad oggetti che mantiente una maggiore corrispondenza con il C rispetto a quanto faccia il C++.
Java invece proprio un linguaggio derivato dal C++ quindi potenzialmente conoscendo quest'ultimo dovresti essere capace di approcciare a java.

paperino00
14-11-2010, 20:37
ma un programma in c++ funziona solo su windows oppure si pu fare funzionare anche sugli altri sistemi operativi come linux e mac ?

Loading