【发布时间】:2013-04-16 16:51:37
【问题描述】:
抱歉,我知道已经提出了很多相关问题,所以我会保持简单。
尽管有几年的编程经验,我还是找不到正确的语法来调整和修改函数内的一个(或多个)数组。例如,假设我想要一个函数用一组“n”个数字填充一个数组,其中“n”是在数组中定义的:
int main(int argc, char *argv[]) {
float *data = NULL
int n = myfunction(data);
for(i=0;i<n;i++) printf("%f\n",data[i]);
free(data);
}
int myfunction(float *input) {
int i,n=10;
input = (float *) realloc( input, n*sizeof(float) );
if(input!=NULL) {
for(i=0;i<n;i++) input[i] = (float)i;
return(n);
else return(-1)
}
我知道这行不通,因为我可能需要使用指向指针的指针,但我无法确定要在函数内部和外部使用的指针、指针指向指针和地址表示法的组合。
感谢任何简单的建议!
【问题讨论】:
-
中肯的评论,但不是我想要的 ;)
标签: c function dynamic-memory-allocation