Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





¿En C es posible asignar a una variable un número binario?

Iniciado por J_F_NASH, 12 de Marzo de 2008, 10:41:53 PM

« anterior - próximo »

J_F_NASH

¿Cómo puedo hacer algo como esto?:
variable = 11100010;


S2.

tamudo

puedes ponerlo en hexadecimal, que equivale a

variable = 0xe2;

Fuente
born to be freak - Blog personal
Introdución a OGRE - Artículos de iniciación

dinamic

Aunque en Hexa queda mas elegante...
variable = 0b11100010;

Un Saludo
My nick is dinamic because the day I registered in went through a serious crisis of originality.

Tei

Cita de: "dinamic"Aunque en Hexa queda mas elegante...
variable = 0b11100010;

Un Saludo

Esta forma es  muy cruda e impersonal.

Es mejor ponerle nombre a los bits.


#define Blinky 0x01
#define Pinky  0x02
#define Inky 0x04
#define Clyde 0x08
#define Donner 0x10
#define Blitzen 0x20
#define Vixen 0x40
#define Comet 0x80

variable = Pinky | Comet | Vixen | Blitzen;

davur

Cita de: "dinamic"Aunque en Hexa queda mas elegante...
variable = 0b11100010;

Un Saludo

Convendría especificar en algún momento de qué lenguaje estamos hablando. Esa notación no es válida ni en C estándar ni en C++ estándar. En particular, es una extensión en compiladores como gcc o Digital Mars.

En C++, puedes expresar constantes binarias con templates:

template <unsigned long n>
struct binary
{
enum { value = binary<n/10>::value * 2 + n % 10 };
};

template <>
struct binary<0>
{
enum { value = 0 };
};

int main()
{
int two = binary<10>::value;

return 0;
}






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.