Restituzione di Valori con Tipi di Dati Semplici
Scorri per mostrare il menu
Le funzioni possono restituire valori di tipi di dati semplici come interi, numeri in virgola mobile e caratteri. Per specificare il tipo di ritorno di una funzione, si indica il tipo di dato prima del nome della funzione nella firma della funzione.
Quando la funzione viene eseguita, può calcolare un valore, che viene poi restituito utilizzando l'istruzione return. Questo tipo di valore di ritorno è stato utilizzato negli esempi di codice precedenti:
main.cpp
12345678910111213141516171819#include <iostream> // Function that adds two integers and returns the result int add(const int a, const int b) { int sum = a + b; return sum; } int main() { int a = 3; int b = 5; // Call the function and store the returned result in a variable int result = add(a, b); std::cout << result << std::endl; }
La funzione add() è dichiarata per restituire un valore intero utilizzando lo specificatore int prima del nome della funzione. Calcola la somma di a e b e restituisce il risultato come int.
Assicurarsi che la variabile in cui si desidera memorizzare il valore restituito all'interno del blocco main() corrisponda al tipo di dato del valore restituito corrispondente.
Si noti che il valore restituito dalla funzione può essere specificato solo all'interno della firma della funzione. Anche se si tenta di restituire un valore di tipo diverso utilizzando l'istruzione return, esso verrà automaticamente convertito nel tipo di dato dichiarato nella firma della funzione:
main.cpp
1234567891011121314151617181920#include <iostream> // Function that adds two integers and returns the result int add(const double a, const double b) { double sum = a + b; return sum; } int main() { double a = 3.5; double b = 5.1; // Call the function and store the returned result in a variable int result = add(a, b); // Print the result std::cout << result << std::endl; }
La somma all'interno della funzione è di tipo double, ma il tipo di ritorno della funzione è int.
Di conseguenza, il valore restituito viene convertito in un intero, dando 8 invece di 8.6.
Si noti che possiamo restituire solo un valore da una funzione utilizzando uno specificatore di tipo di dato semplice. Per restituire più valori, è necessario utilizzare array o strutture personalizzate (classi).
Grazie per i tuoi commenti!
Chieda ad AI
Chieda ad AI
Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione