TODOPIC
Otros Microcontroladores / Dispositivos programables => Microcontroladores ARM => Mensaje iniciado por: cdrpo en 11 de Octubre de 2009, 09:27:53
-
Hola
Les pregunto si existe compiladores de C o C++ para PC y micros PIC que soporten números en binario 0b10001001 como lo hace CodeWarrior
Gracias
-
Todos
-
Con codeBlock http://www.codeblocks.org/ genera un fallo el siguiente programa
#include <iostream>
using namespace std;
unsigned char x1;
int main()
{
x1 = 0b10001001;
cout << x1 << endl;
return 0;
}
invalid suffix "b10001001" on integer constant|
Hay que incluir algún tipo de biblioteca en el anterior código, y en que compilador de PC trabaja?
-
Pues yo habría jurado que la notación binaria expresada como 0Bxxxxxxxx formaba parte del Ansi C, pero no encuentro ningún sitio donde venga escrito.
-
Yo acabo de hacer una prueba con el gcc y funciona perfectamente. Y creo q mas estandar q gcc no hay jeje.
Saludos!!
-
Entre a la pagina del compilador que mencionas http://gcc.gnu.org/ pero no se cual es el archivo de descarga para windows :?
-
Lamentablemente esa notacion no es parte del ANSI C, solo decimal, octal y hexadecimal.
Saludos !
-
Entre a la pagina del compilador que mencionas http://gcc.gnu.org/ pero no se cual es el archivo de descarga para windows :?
El gcc es un compilador para linux, probe en el porq es un compilador q sigue rigurosamente los estandares. Para windows esta la version mingw, pero no se si servira para microcontroladores de freescale.
Aunq me parece q la expresion 0b no es estandar, sino como dice el amigo richi, solamente decimal, octal y hexa.
saludos!!
-
Lamentablemente esa notacion no es parte del ANSI C, solo decimal, octal y hexadecimal.
Saludos !
Entonces aclarado, yo estaba confundido.
-
Igual como consejo, conviene escribir segun el estandart, simplemente converti tu numero de binario a decimal o hexa y no vas a tener problemas de migracion en el futuro.
Saludos !