子函数传递的是数组的首地址,在子函数中,就变了样,直接用形参指针名做数组,是怎么一回事,求解
时间:10-02
整理:3721RD
点击:
void Uart(unsigned char *buf, unsigned char len)
{
unsigned char i;
unsigned char cnt;
unsigned char str[4];
unsigned int crc;
unsigned char crch, crcl;
if (buf[0] != 0x01) //看这一段,这只是一个子函数,整个c文件中,没有定义buf[]这个数组,这里怎么会出现,我把形参的char *buf改成char *bu,报错,没有申明buf【】这和数组,请问大神门这是怎么回事,看了csapp中的介绍,没看懂,求解答,小弟很疑惑
{
return;
}
{
unsigned char i;
unsigned char cnt;
unsigned char str[4];
unsigned int crc;
unsigned char crch, crcl;
if (buf[0] != 0x01) //看这一段,这只是一个子函数,整个c文件中,没有定义buf[]这个数组,这里怎么会出现,我把形参的char *buf改成char *bu,报错,没有申明buf【】这和数组,请问大神门这是怎么回事,看了csapp中的介绍,没看懂,求解答,小弟很疑惑
{
return;
}
buf[0]就是函数形参unsigned char *buf的第一个字节。