我想一些幫助,指針:在主功能 我已初始化的變量應該指向數組:2D分配的數組(固定的列數),爲函數的返回值
int main() {
int n;
double (*array)[3];
array = fillArray(&n);
功能接收一個整數參數,它計算行數。該函數的返回值應該是一個指向新創建的數組,其將保存在主函數變量「陣列」:
double (*)[3] fillArray(int * n) {
double (*array)[3] = NULL;
int allocated = 0;
*n = 0;
while (1)
{
/*scanning input*/
if (allocated <= *n)
{
allocated += 10;
array = (double(*)[3]) realloc (array, sizeof(*array) * allocated)
}
array[*n][0] = value1;
array[*n][1] = value2;
array[*n][2] = value3;
(*n)++;
}
return array;
}
然而,返回值的類型是不正確的,我我有點失落。任何人都可以告訴我這段代碼有什麼問題嗎?
預先感謝您:)
解釋「的返回值的類型是不正確的」,什麼樣的錯誤你好嗎? –
編譯錯誤:在''''之前期望的非限定標識符)和錯誤:'fillArray'之前的預期初始化程序 – mireille
你認爲'double(*)[3]'是什麼類型? – e0k