读书人

请教这个参数如何传递的

发布时间: 2012-03-29 12:53:12 作者: rapoo

请问这个参数怎么传递的
main()
{
f_com((CHAR *)&version.data[0], 0xFF, (INT)0x0010);


}

CHAR *f_com(CHAR *destp, CHAR data, INT length)
{
}

请问; 第二个参数0xff 16进制 传给一个 UCHAR 型的变量, data里的实际取到的值还是0xFF 么? 0xFF占几个字节?

[解决办法]
0xFF是16进制的255,由于data是char(-128-127),data里的实际取到的值为-1
[解决办法]
是的,下面的代码也可以,不用改参数类型,不过不建议使用此方法。

CHAR *f_com(CHAR *destp, CHAR data, INT length)
{
uchar uData = (uchar)data; //这样取到0xFF了
}

读书人网 >C语言

热点推荐