Opções binárias de variáveis de impressão do gdb
Quando eu peço GDB para imprimir um real em binário, eu recebo isso: é o valor esperado. E parece que o GDB está me dando a representação inteira depois de arredondar. Coisa é que ele estava fazendo isso com uma variável no trabalho também. Usando uma declaração em um programa C - e depurando - mesma coisa, ele está me mostrando a representação inteira. Não há nenhuma maneira de ter GDB me mostrar o formato de ponto flutuante O formato t realmente converte o valor em um inteiro. De gdb: Formatos de saída: Isso é feito pelo código em gdbs printscalarformatted: onde unpacklong converte vários tipos de valores, incluindo float, em um longo. Uma solução é tomar o endereço da variável, lançá-lo para um (int32), e dereference que. Ou, no nível independente da linguagem, usando o comando x: Isso foi feito em um x86. Outros sistemas endian podem produzir um padrão de bits diferente.
Comments
Post a Comment