强制转换的一个问题

问题:如果一个函数的形参是unsigned char *p,而实参变量是一个unsigned long  data,那么你会怎么传递参数呢?

方法1 :先定义一个联合体变量 typedef union {unsigned char a[4]; unsigned long b}mylong

          mylong data2 ;

          data2.b= data1;

         然后用 data2.a或者&data2.a[0]做实参传递。

方法2 :用((unsigned char *)&data)做实参。

原文地址:https://www.cnblogs.com/jieruishu/p/5717140.html