Re: Bits in integer-Wert
Norbert Müller <[email protected]>
| Newsgroups | gmane.linux.suse.programming |
|---|---|
| Message-ID | <[email protected]> |
On Sunday 03 April 2005 18:16, Daniel Feist wrote:
> Hi Leute,
> angenommen, wir hätten einen Integerwert, beispielsweise 'int i = 36;'
> und wollen herausfinden, welche binären Bits gesetzt sind.
> Die Zahl 5 beispielsweise, sieht binär so aus: 0000000000000101 - also
> sind 2 Bits gesetzt. Kann mir da jemand weiterhelfen?
>
> Vielen Dank schonmal im vorraus!
Hallo
Google is your friend:
http://groups-beta.google.com/group/comp.lang.c++/browse_frm/thread/aace268b3410d8ab/5febbc3df883c097?
In ein Programm gegossen, zum Bleistift:
#include <iostream>
int bitcount(unsigned n)
{
int count = 0;
while (n)
{
n &= (n-1);
++count;
}
return count;
}
int main(int argc, char **argv)
{
if (argc != 2)
{
std::cout << "Usage " << argv[0] << " number\n";
return -1;
}
std::cout
<< "bitcount("
<< argv[1]
<< ") = "
<< bitcount(atoi(argv[1]))
<< "\n";
return 0;
}
GruÃ
Norbert
--
Um die Liste abzubestellen, schicken Sie eine Mail an:
[email protected]
Um eine Liste aller verfügbaren Kommandos zu bekommen, schicken
Sie eine Mail an: [email protected]