#include<iostream>
#include<stdlib.h>
using namespace std;
template<typename T>
string binaryFormat(T val, int length){ //要转换成length位的二进制字符串
string binaryStr(length, '0');
for(int i = 0; i < length; i++){
if((val >> i) & 1)
binaryStr[length - 1 - i] = '1';
}
return binaryStr; //返回值是一个字符串
}
/*
template <typename T>
string formatBinary(T val)
{
int length = 8 ;// 要转换成多少位二进制字符串
string binaryFormat(length, '0');
for (int i = 0; i < length; i++)
{
if ((val >> i) & 1)
binaryFormat[length - 1 - i] = '1';
}
return binaryFormat;
}
*/
int main(){
for(int i = 0; i < 17; i++){
cout<<binaryFormat(i, 8)<<endl;
}
cout<<endl;
cout<<binaryFormat(250, 8)<<endl;
cout<<binaryFormat(251, 8)<<endl;
cout<<binaryFormat(252, 8)<<endl;
cout<<binaryFormat(253, 8)<<endl;
cout<<binaryFormat(254, 8)<<endl;
cout<<binaryFormat(255, 16)<<endl;
return 0;
}