万能比较 万能打印


#include<stdio.h>
#include <string.h>
typedef unsigned char  uint8_t;
typedef unsigned short uint16_t;
typedef unsigned int   uint32_t;


typedef struct 
{
	unsigned char weight;
	unsigned char hight;
}_test;

/*万能比较*/
uint8_t all_comp(void* a,void* b,uint8_t len)
{
  uint8_t i;
  uint8_t* A=(uint8_t*)a;
  uint8_t* B=(uint8_t*)b;
  for(i=0;i<len;i++) printf("%02X ",A[i]);  printf("\n");
  for(i=0;i<len;i++) printf("%02X ",B[i]);  printf("\n");
  for(i=0;i<len;i++)
    if(A[i]!=B[i]) return 1;
  return 0;
}

/*万能打印*/
void all_print(void* A,uint8_t len)
{
	for(uint8_t i=0;i<len;i++)
	printf("%02X ",*( (unsigned char*)A+i   )    );
	printf("\n");
}


int main(void)
{
unsigned char i = 0;
_test test1;
_test test2;
test1.weight=5;
test1.hight=8;
test2.weight=5;
test2.hight=8;
/*测试函数*/
all_print(&test1,sizeof(_test));
all_print(&test2,sizeof(test2));
printf("%d\n",all_comp(&test2,&test1,sizeof(_test)) );

}

猜你喜欢

转载自blog.csdn.net/weixin_42381351/article/details/85046947