[C con Clase] Programacion/compilación selectiva segun SO
Jorge Vega Sanchez
memmaker650 en gmail.com
Vie Nov 27 12:10:41 CET 2009
Buenas
Estoy empezando a trabajar con programación de 64 bits y leyendo unos
cuantos papers estoy viendo que algunas arquitecturas tiene
operaciones/optimizaciones especiales para estas operaciones. Mientras
que las máquinas de 32 bits lo hacen de otra manera. Esto también
cambia segun usamos Windows o sistemas basados en UNIX en como
representar estos datos.
Primero estoy empezando con cosas muy sencillitas para luego ir
complicando las cosas. Me gustaría saber si es posible programa zona
para segun el sistema operativo. Es decir, como si estamos en windows
que se compile usando esto y si estamos en Linux o Mac use esto otra
forma.
He mirado algo sobre ·ifdef y demás pero no me queda muy claro
COIDIGO DE EJEMPLO --> SUMA DE DOS NUMEROS DE 64 BITS Y REPRESENTACION
DE LA SOLUCION POR PANTALLA --> EN MAC
#include <iostream> // Esta biblioteca permite el uso de cout(<<) y de
cin(>>)
using namespace std;
int main()
{
long long op1, op2, sol;
#ifdef defined X86_64
op1=0x00FF00AA;
op2=0x10203402;
sol=op1+op2;
printf("Solucion suma de 64 bits igual a %llu \n",sol);
// En Windows
printf("Solucion suma de 64 bits igual a %"PRIu64" \n",sol);
//Otra opción es esta "%I64d
#endif /* X86_64 */
return 0;
}
Gracias de antemano.
Más información sobre la lista de distribución Cconclase