1
下面是我的函数,它接受一个大小为2的char数组,并将它传递给一个函数,并且该函数应该返回相同的2个字符(当它与它交谈时,它有点复杂的过程一个硬件设备)。 问题是当我将char(* in)[2]传递给函数时;当我打印元素时,它只显示[0]中的数据,而不是[1]中的数据。不知道为什么。任何帮助赞赏。将char数组的指针传递给函数
int function(struct device *d, char (*in)[2], char (*out)[2])
{
printf("in: %c %c\n", *in[0], *in[1]); // TEST
uint16_t data = (*in[0] << 8) + *in[1];
send_request(d, IN, ECHO, data, 0, *out, 2);
printf("%s\n", *out);
return 0;
}
感谢 鲍勃
这个:'* in [0]'很可能不会解析你的想法。同样在'[1]'中的*。 – WhozCraig 2014-10-02 06:57:57