void HowToPutParameters( XXXXXX) // how to put parameters in XXXXXX
{
array[0][0]=5;
}
void main()
{
int array[2][2]={{1,2},{3,4}};
HowToPutParameters(&array[0][0]); // &array[0][0] is correct or &array[0]
}
我想把这个数组放到 HowToPutParameters;
1.我不确定"&array[0][0]或&array[0]"是否正确,编译器似乎可以识别;
我试过void HowToPutParameters(int *array ( ==>编译失败
我试过void HowToPutParameters(int *array[][] ( ==>编译失败
我的编译器是MPLAB X IDE V1.8,芯片是Microchip>PIC32MX795F512
如果你想使用传递二维数组参数,请使用:
void func(int (*a)[2]);// tell the function the first dimension size!
func(array);
它与:
void func(int a[][2]);
func(array);
如果传递&array[0][0]
,则表示将指针指向 int。
void func(int *element);
像这样,在代码中,你只传递一个指向数组int
元素的指针,而不是数组本身。
void HowToPutParameters(int* element)
而且您应该始终使用 int main
而不是 void main
.