尝试在函数

时间:2018-04-08 14:00:56

标签: c arrays function pointers

我无法将数组传递给函数

void funkcia_e( int *pole_cien[], int* dlzka_pola_cien, bool v_bolo_vykonane ) {
    some_other_function(v_bolo_vykonane);
    //work with pole_cien[i], malloc etc
}

void main() {
    bool v_bolo_vykonane = false;
    int dlzka_pola_cien = 0;
    float pole_cien[1]; //make quasi-empty array

    funkcia_e(&pole_cien[0], &dlzka_pola_cien, v_bolo_vykonane);
}

但是在尝试编译时IDE正在抛出错误:

Error (active)  E0167   argument of type "float *" is incompatible with parameter of type "int **"  135 
Error   C2664   'void funkcia_e(int *[],int *,bool)': cannot convert argument 1 from 'float *' to 'int *[]'

任何人都可以分享一些关于我做错的知识吗?

我正在尝试将指向数组,数组大小和bool变量的指针传递给funkcia_e。

在funkcia_e中我将修改数组的内容(realloc,填充值),数组整数的大小,然后在main中使用这些新值。

0 个答案:

没有答案