gmp variable erstellen

Gast #5807239
Lesenswert?

Hallo,
wenn ich mit der libgmp-library eine Variable erstelle, kennei ich diese 
ja vorher
1
mpz_t var;
2
mpz_init_set_str(var, 123456",16);
hier setze ich die Variable BASE auf 0x123456. Diesen wert kannte ich ja 
bei der definition schon.
Wie kann ich jetzt aber einen Array als mpz_t variable abspeichern? Z.B. 
wenn ich die Werte geschickt bekomme und zusammensetzen muss?
z.B.
1
arr[0] = 0x12;
2
arr[1] = 0x34;
3
arr[2] = 0x56;
Persönliche Seite #5807248
Lesenswert?

mpz_init_set_str erwartet eine Textrepräsentation der Zahl.

Du kannst jetzt Dein Array in eine Textrepräsentation überführen und 
dann mpz_init_set_str aufrufen:
1
char text[10];
2

3
snprintf(text, 10, "%02x%02x%02x", arr[0], arr[1], arr[2]);
4

5
mpz_init_set_str(var, text, 16);

Du könntest auch den Weg über einen Integer gehen, in den Du Dein Array 
umwandelst, und dann zB. mpz_set_ui resp. mpz_set_si verwenden.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren