Avatar billede Slettet bruger
09. november 2003 - 23:20 Der er 3 kommentarer og
1 løsning

Bitset, 64 bit

bitset<64> key = 0xaaaaaaaaaaaaaaaa;

Giver:

0000000000000000000000000000000010101010101010101010101010101010

Hvorfor giver det ikke?

1010101010101010101010101010101010101010101010101010101010101010
Avatar billede Slettet bruger
09. november 2003 - 23:22 #1
Årh sikkert fordi integer værdien af hex værdien ikke passer i en unsigned int.
Avatar billede segmose Nybegynder
10. november 2003 - 09:28 #2
Du skal nok typecaste 0xaaaaaaaaaaaaaaaa til en 64 bit værdi, jeg ved ikke om dine long er 32 eller 64, sandsyndligvis bliver det noget lignende
bitset<64> key = (long long) 0xaaaaaaaaaaaaaaaa;
Avatar billede Slettet bruger
10. november 2003 - 14:45 #3
Det ændrer ikke rigtigt noget. Det er vel nok fordi bitset klassens constructor tager en bestemt type.

Anyways, den eneste måde jeg kan hitte ud af at intialisere 64 bit i et bitset på (af en omgang) er:

const bitset<64> key(string("0000000100100011010001010110011110001001101010111100110111101111"));

Jeg ville gerne kunne køre det ved angivelse af HEX tal. Nogle tips?
Avatar billede segmose Nybegynder
10. november 2003 - 18:17 #4
http://www.mit.edu/afs/net/dev/reference/source/sasl2/cyrus-sasl-2.1.6/plugins/otp.c

og så

const biset<64> key(hex2bin("aaaaaaaaaaaaaaaa"));
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester