[英]Why does my code only return partial results? array_push not working for first element
[英]Why does my array prints only the first element?
double fun(int size) {
double *arr = (double*)calloc(size, sizeof(double));
assert(arr);
for (int i = 0; i < size; i++) {
scanf_s("%lf", &arr[i]);
}
return *arr;
}
void main() {
int size = 5;
printf("%lf", fun(size));
}
尝试使用主 function 打印我的数组,它只打印数组中的第一个元素..有人知道如何修复它吗?
double fun(int size)
考虑 function 返回的内容。 单双。 *arr
行将获取arr
指针中第一个元素的值并返回它。 我认为您的意思是遍历指向 function 返回的双精度的指针中的每个元素。
double *fun(int size) {
double *arr = (double*)calloc(size, sizeof(double));
assert(arr);
for (int i = 0; i < size; i++) {
scanf_s("%lf", &arr[i]);
}
return arr;
}
void main() {
int size = 5;
double *arr = fun(size);
for (int i = 0; i < size; i++) {
printf("%lf", arr[i]);
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.