All pastes #29392 Raw Edit

Untitled

public c v1 · immutable
#29392 ·published 2005-11-19 23:28 UTC
rendered paste body
#include <iostream>#include <cstdio>#include <cstdlib>#ifdef WIN32#    include <conio.h>#    define clrscr() system("cls")#    define pause() getch()#else#    define clrscr() printf("\033c")#    define pause() getchar()#endifchar *getline();char *toBinary(char *);char *reverse(char *);int main(int argc, char *argv[]) {    char *b;    char *d;    char *q;    while(1) {        clrscr();        printf("%s\n", "pregetline");        b=getline();        printf("%s: %s\n", "prereverse", b);        d=reverse(b);        printf("%s\n", d);        q=toBinary(d);        printf("%s\n", q);        pause();    }        return EXIT_SUCCESS;}char *getline() {    char *buf = NULL, tmp=0;    int i=0;    while((tmp = getc(stdin)) != '\n' && tmp != EOF) {        buf = (char *)realloc(buf, i+1);        buf[i]=tmp;        i++;    }    buf[i]=0;    return buf;}char *toBinary(char *str) {    char *buf = "";    char *q;    int co;    int o;    char wee;        for(int i=0;i<strlen(str);i++) {        o=0;        buf = (char *)realloc(buf, i*8 + 1);        while(o < 8) {            co=(int)str[i] & (2<<o);            wee = (co==(2<<o))?'1':'0';            buf[i+o] = wee;            o++;        }    }    q=reverse(buf);    return q;}char *reverse(char *str) {    char *buf = (char *)malloc(strlen(str) + 1), tmp[] = " ";    int le=strlen(str);    for(int i=0;i<le;i++) {        buf[i] = str[le-i-1];    }    buf[le]=0;    return buf;}