【发布时间】:2010-01-07 07:16:08
【问题描述】:
下面的代码将大整数打印到十进制格式的文件中,我如何将代码转换为打印二进制数据和十六进制数据到文件中??
static void
print_pos( FILE* f, bigint bi )
{
if ( bi_compare( bi_copy( bi ), bi_10 ) >= 0 )
print_pos( f, bi_int_divide( bi_copy( bi ), 10 ) );
putc( bi_int_mod( bi, 10 ) + '0', f );
}
bi_10 只是一种 bigint 类型,如何修改上面的代码以打印十六进制/二进制数据而不是十进制数据?
【问题讨论】:
-
如果 base 2 只给出 1 和 0 ,我需要输入 BINARY FORMAT (字节值?)。但我需要不可读的二进制格式,必须使用哪个基数??
-
C 中任何等同于 JAVA .toByteArray() 或 getBytes() 方法的东西?但是对于这个大十进制字符字符串,必须使用哪个基数来获取 Bytearray ?非常感谢
标签: c biginteger