函数输入参数中的类型转换不正确

时间:2014-02-21 21:23:18

标签: c function input producer-consumer

我为我编写的代码收到以下错误。 无法将参数char (*)[10][256]的{​​{1}}转换为char*1。 我无法弄清楚应该向int pushInBuffer(char*)引入什么类型的输入参数。

pushInBuffer()

1 个答案:

答案 0 :(得分:1)

注意:如果你使用buf作为全局,你不需要将它从函数传递给函数。

//如何在函数中提供2_D数组作为输入参数和访问权限。

int popFromBuffer( char *item ); 

更改为

int popFromBuffer( char* item[] );

buf[BUFFERSIZE][256]  change to char* buf[BUFFERSIZE];

或者你可以用结构

来做
typedef struct _BUF
{
buf[BUFFERSIZE][256];
}BUF;

int popFromBuffer(BUF b);  
{
/* access buffer */
b.buf

}

int main()
{
BUF b ={0};
popFromBuffer(b);
return 0;
}