Cuando me encontré con este programa:C++ volver valor sin instrucción de retorno
#include <iostream>
int sqr(int&);
int main()
{
int a=5;
std::cout<<"Square of (5) is: "<< sqr(a) <<std::endl;
std::cout<<"After pass, (a) is: "<< a <<std::endl;
return 0;
}
int sqr(int &x)
{
x= x*x;
}
me dieron el siguiente resultado:
Square of (5) is: 2280716
After pass, (a) is: 25
¿Cuál es 2280716
? Y, ¿cómo puedo obtener un valor devuelto a sqr(a)
mientras que no hay una declaración return
en la función int sqr(int &x)
?
Gracias.
WTF? ¿Por qué querrías escribir tal código? Claramente, sqr es una función matemática y no tiene sentido usar el parámetro como entrada-salida. –
@Ilya Kogan. Simplemente probando cómo pasar por referencia funciona – Simplicity