hexdump -C 实现

int macdbg_dmphex( const char* buff, int len );
int macdbg_dmphex( const char* buff, int len )
{
    int retval = 0; 
    int x, y, tot, lineoff;
    const char* curr;
    lineoff = 0;
    curr = buff;
    tot = 0;
    char pre_16bytes[16]={0x00};
    int dump_line = 0x00;

    memset(pre_16bytes, 0xff, sizeof(pre_16bytes));

    at_uart_log_string( "\nbuff = 0x%08x.\n", buff );  
               
    for( x = 0; len > x+16; ){             
         if( memcmp(pre_16bytes, curr, 16)==0x00 && curr!=buff ){
              if( dump_line==0x00  ){  
                  at_uart_log_string("0x%08x:  ", lineoff); 
                 at_uart_log_string("*    \n");      
                 dump_line = 0x01;
              }
             tot = tot + 16;
             goto skip_next;
         }
         dump_line = 0x00;
         at_uart_log_string("0x%08x:  ", lineoff); 
         for( y = 0; y < 16; y++ ){
              at_uart_log_

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值