C++学習ノート:sizeofでintタイプが何バイトを占有しているか判断しない
3004 ワード
#include <stdio.h>
#include <string.h>
char *change(int val, int base, char *retbuf)
{
static const char *str = "0123456789ABCDEF";
char *p;
char buf[15];
p = buf+14;
*p = 0;
do { *--p = str[val % base]; } while( val /= base );
strcpy(retbuf,p);
return retbuf;
}
int main()
{
int i = 1;
char binbuf[32];
printf("%s %d
", change(i, 2, binbuf), i);
int sum = 0;
while(0 != i)
{
sum++;
i = i<<1;
printf("%s %d
", change(i, 2, binbuf), i);
}
printf("sum = %d
", sum);
}