/*
以16进制字符串输出二进制缓冲区,带排版
start 缓冲区指针
len 传冲去长度
col 列数默认16个16进制数
n 列间隔0,4,8
*/
void dump_mem(unsigned char * start, unsigned int len, unsigned char col=16, unsigned char n=8, FILE *out=stdout)
{
if(start == NULL) return ;
fprintf(out,"/r/n");
int i;
for (i=0;i<len;i++)
{
fprintf(out,"X ",start[i]);
if (n && i%n==(n-1)) fprintf(out," ");
if (i%col==(col-1)) fprintf(out,"/r/n");
}
fprintf(out,"/r/n");
}