Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /* write a function that takes integer as an input and return chat* string
- * that contains binary system representation of that integer as an input
- */
- #include <stdio.h>
- #include <stdlib.h>
- #include <math.h>
- char* convert(int number) {
- int num_bits = 0;
- for (int i = 0;; i++) {
- if (number < pow(2, i)) {
- num_bits = i;
- break;
- }
- }
- printf("num_bits: %d\n", num_bits);
- char *ch = (char*)malloc(num_bits);
- for (int i = 0; i < num_bits; i++) {
- if (number & (1 << i)) {
- ch[i] = '1';
- } else {
- ch[i] = '0';
- }
- }
- char *rev = (char*)malloc(num_bits);
- for (int i = 0; i < num_bits; i++) {
- rev[i] = ch[num_bits-1-i];
- }
- free(ch);
- return rev;
- }
- int main(int argc, char **argv) {
- char *str = convert(0xAF);
- printf("result: %s\n", str);
- free(str);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement