codepad
[
create a new paste
]
login
|
about
Language:
C
C++
D
Haskell
Lua
OCaml
PHP
Perl
Plain Text
Python
Ruby
Scheme
Tcl
#include <stdio.h> // 10 to 2 char* dec_to_bin(char* d, int n) { char* t = d; unsigned u = (unsigned)n; for(unsigned i = u; i != 0; i >>= 1) ++d; *d = '\0'; for(--d; u != 0; u >>= 1) *d-- = (u & 1) + '0'; return t; } // 2 to 10 int bin_to_dec(const char* b) { unsigned n = 0u; while(*b) { n |= (*b - '0'); if(*(++b)) n <<= 1; } return (int)n; } int main(void){ char b[33]; int n; n = -0xFFFF; printf("src: %d\n", n); printf("bin: %s\n", dec_to_bin(b, n)); printf("dst: %d\n\n", bin_to_dec(b)); n = -0xFFFFFFF; printf("src: %d\n", n); printf("bin: %s\n", dec_to_bin(b, n)); printf("dst: %d\n\n", bin_to_dec(b)); n = -1234567; printf("src: %d\n", n); printf("bin: %s\n", dec_to_bin(b, n)); printf("dst: %d\n\n", bin_to_dec(b)); return 0; }
Private
[
?
]
Run code
Submit