We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
hi Forum! I have declared an char-array, for a simple Data stream buffer of bits: char data[] = "101101010011111@". And now just want cast this items to a integer-value. How can i do this in simplest way, without sum the bits bitwise via pointer? cu O. Swid
One thing to note is that the LSB of the ASCII code for '0' is 0, and the LSB of the ASCII code for '1' is 1; thus a simple bitwise-AND with 0x01 will convert these particular ASCII codes to their numerical equivalents. Thus you can buid the integer by looping the following:
result = (result<<1) | (string[i]&0x01);
nice suggestion Andy! Thanks for your other postings too! They are very usefull.
Is this library function of any use to you? http://www.keil.com/support/man/docs/c51/c51_strtoul.htm In your case the base will be 2, of course.