Operadores de manejo de bits

Iniciado por m@o_614, 15 Enero 2015, 20:19 PM

0 Miembros y 1 Visitante están viendo este tema.

m@o_614

Saludos

Estoy haciendo una función a la cual le paso por parámetros una variable de tipo int, y esa variable la convierto a binario con la ayuda de operadores de bits

Código (java) [Seleccionar]
public static void funcion(int valor)
{
int i,bytes;
char binario[] = new char[32];
for(i = bytes-1;i >= 0 ;i--)
{
binario[i] = (valor&1)? '1':'0';
                        valor >> 1;
}
}


Al principio declaro un arreglo de caracteres que va a almacenar el numero binario, despues con un ciclo for voy verficando con &(el equivalente a AND) que si los dos bits son 1 en binario se almacena 1, de lo contrario se almacena 0, el problema es que con el operador condicional ? en la parte donde tengo (valor&1) me aparece un mensaje de error que dice:

cannot convert from int to boolean, y no entiendo por qué si esta misma función ya la había utilizado en un programa en C

de antemano gracias

El Benjo

Intenta con el && en vez de &:

Código (java) [Seleccionar]
binario[i] = (valor&&1)? '1':'0';
www.es.neftis-ai.com

Sí hay un mejor lenguaje de programación y es ese con el que puedes desarrollar tus objetivos.

ivancea96