getbits.c
author Markus Bröker<broeker.markus@googlemail.com>
Fri, 20 Oct 2017 06:41:27 +0200
changeset 168 dfb60716880c
parent 141 0b5befeb361e
permissions -rw-r--r--
Broken OSX Demo added

/**
 * getbits.c
 * Copyright (C) 2010 Markus Broeker
 */

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

#define BITS 8

char *getbits (unsigned int what)
{
    static char byte[BITS + 1];

    short i = BITS;

    memset (byte, '0', BITS);

    while (what > 0) {
        byte[--i] = (what % 2) ? '1' : '0';
        what >>= 1;
    }
    byte[BITS] = '\0';

    return byte;
}

int main (void)
{
    unsigned int i;
    char *s = strdup (getbits (0));

    for (i = 240; i < 255; i++)
        printf ("%s %s %s %s (%d)\n", s, s, s, getbits (i), i);
    free (s);

    return 0;
}