#include
void toHexString(unsigned char *buf,char *flag);
int main(void){
unsigned char x[8]={11,12,13,14,15,6,7,8};
char y[16];
toHexString(x,y);
int temp;
printf("%s",y);
return 0;
}
void toHexString(unsigned char *buf,char *flag){
int temp=0;
for(int i=0,k=0;i<8;i++){
if(buf[i]<=9) {flag[k]='0';flag[k+1]='0'+buf[i];}
else if(buf[i]>9&&buf[i]<16) {flag[k]='0';flag[k+1]='A'+buf[i]-10;}
else if(buf[i]>=16){
temp=buf[i]/16;
printf("temp%d=%d",i,temp);
if(temp<=9) flag[k]=temp+'0';
else if(temp>9&&temp<16) flag[k]=temp+'A'-10;
temp=buf[i]%16;
printf("temp=%d",temp);
if(temp<=9) flag[k+1]=temp+'0';
else if(temp>9&&temp<16) flag[k+1]=temp+'A'-10;
}
printf("flag=%c%crn",flag[k],flag[k+1]);
k+=2;
}
flag[16]=' ';
}



