std::cout << "Enter decimal number: " ;
std::cin >> input ;
std::cout << "0x" << std::hex << input << '\n' ;
si su añadir una entrada que puede ser un valor lógico o flotar o INT se pasará de nuevo en el int llamada a la función principal ...
Con plantillas de funciones , basado en tipos de argumentos, C genera funciones separadas para manejar cada tipo de llamada de manera apropiada. Todas las definiciones de plantilla de función comienzan con la plantilla de palabra clave seguida por los argumentos encerrados entre corchetes angulares < y>. Un único parámetro formal T se usa para el tipo de datos que se probarán.
Considere el siguiente programa donde se le pide al usuario que ingrese un número entero y luego un flotador, cada uno usa la función cuadrada para determinar el cuadrado. Con plantillas de funciones, en función de los tipos de argumentos, C genera funciones separadas para manejar cada tipo de llamada de forma adecuada. Todas las definiciones de plantilla de función comienzan con la plantilla de palabra clave seguida por los argumentos encerrados entre corchetes angulares < y>. Un único parámetro formal T se usa para el tipo de datos que se probarán.
Considere el siguiente programa donde se le pide al usuario que ingrese un número entero y luego un flotador, cada uno usa la función cuadrada para determinar el cuadrado.
#include <iostream>
using namespace std;
template <class T> // function template
T square(T); /* returns a value of type T and accepts type T (int or float or whatever) */
void main()
{
int x, y;
float w, z;
cout << "Enter a integer: ";
cin >> x;
y = square(x);
cout << "The square of that number is: " << y << endl;
cout << "Enter a float: ";
cin >> w;
z = square(w);
cout << "The square of that number is: " << z << endl;
}
template <class T> // function template
T square(T u) //accepts a parameter u of type T (int or float)
{
return u * u;
}
Here is the output:
Enter a integer: 5
The square of that number is: 25
Enter a float: 5.3
The square of that number is: 28.09
'printf ("% x ", k)' Supongo – Esailija
Esto no está claro. '0x265' ** es ** 613 en decimal. ¿Que estabas esperando? –
@Esailija, creo que convierte int a hexadecimal en su lugar. – zeulb