Quantas vezes você procurou uma biblioteca em C que trate números grandes tipo 128 bits, etc ... Eu precisei disso quando tive que transformar da notação hexadecimal o valor resultante de uma função de hash (MD5) de 128 bits para a notação decimal. A Resposta é usar a biblioteca GMP (http://gmplib.org/). A biblioteca é muito fácil de usar para quem conhece o C pois usa as mesma nomeclatura das funções existentes. Me poupou um tempão ..
int main (int argc, char *agv[]) {
char szValorHexa [200+1];
char szValorDec [200+1];
mpq_t q;
mpq_init (q);
strcpy (szValorHexa, "0x3b274f94d03");
gmp_sscanf (szValorHexa, "%Qi", q);
gmp_sprintf (szValorDec, "%Qd", q);
mpq_clear(q);
printf (szValorDec);
}
quinta-feira, 3 de junho de 2010
Assinar:
Postar comentários (Atom)
Nenhum comentário:
Postar um comentário