Tengo un M binario tal que 34 = siempre estará presente y el resto puede variar entre cualquier número de dígitos, pero siempre será un número entero.Binario a entero -> Erlang
M = [<<"34=21">>]
Cuando ejecuto este comando consigo una respuesta como
hd([X || <<"34=", X/binary >> <- M])
Answer -> <<"21">>
¿Cómo puedo conseguir que esto sea un entero con el más cuidado para que sea lo más eficiente posible?
¿Es esta la manera más eficiente de hacerlo? ¿Alguna idea de por qué no hay una función para ir directamente de binario a entero? – BAR
porque un binario es por defecto un conjunto de números enteros. Lo que ha hecho aquí se usa para la representación de caracteres enteros que Erlang sabe interpretar como una cadena. Básicamente, un BIF para hacerlo sería 'binary_to_list_to_integer' porque '<> = <<1,2,3>>' ya le daría solo '1' y eso es más o menos una conversión de binario a entero, supongo. –