Título: Migrar funcion de C a C# problema con tamaño de variable 16 y 32 bits Publicado por: AlbertoBSD en 21 Marzo 2018, 22:20 pm Migrar una funcion de un lenguaje a otro no debería de ser problema, sin embargo estoy algo atorado con los resultado que me arroja una vez migrado.
En teoria deberia de ser el mismo resultado en ambos casos, sin embargo no es asi. Codigo en C (Original sin depuracion) Código
Codigo en C (Con depuracion) Código
Salida del codigo en C para el ejemplo Dado: Código: Depurando CRC Codigo en C# Código
Salida del programa en C# Código: len: 4 El problema creo que se encuentra en la conversion de variables de 16 bits a 32 bits, pero e tratado de reasignar los valores con ANDS ( & 0xffff) para que queden de 16 bits y ni aun asi funciona. Alguna ayuda. Saludos! Título: Re: Migrar funcion de C a C# problema con tamaño de variable 16 y 32 bits Publicado por: engel lex en 21 Marzo 2018, 22:47 pm el error está en como te está interpretando los numeros... tu codigo no debería ser sensible a largo (en tal caso siempre puedes usar and y recortar a 16 bits)
Código: 010201 en C se interpreta como octal y su valor decimal es 4225 esto se ve reflejado en el primer crcval impreso... en C# lo está interpretando como decimal busca como se representan... por lo que veo creo que es \0### o simplemente usa los valores octales como decimales (en lugar de 010201, usa 4225 y 017 es 15) Título: Re: Migrar funcion de C a C# problema con tamaño de variable 16 y 32 bits Publicado por: AlbertoBSD en 21 Marzo 2018, 22:59 pm Pense que si lo interpretaba como Octal.
Muchas gracias Engel, con eso quedo, eres una maquina!! ;-) ;-) ;-) |