c - How to return an array of pointers? -


i have made code calculate variance , mean of array of numbers, can't find way return array of pointers.

this function:

float* statistics(int numbers[], int numbers_len, float * ptr_mean, float * ptr_variance, float * ptr_stdev, int * ptr_median){    float*mean; float*variance; float stat[4]; float*array_stat;   int i=0;    mean=calculate_mean(numbers, numbers_len);   variance=calculate_variance(numbers, numbers_len, mean);   stat[0]=*mean;   free(mean);   mean=null;    stat[1]=*variance;   free(variance);   variance=null;    for(i=0;i<2;i++){     array_stat=(float*)calloc(2, sizeof(float));     array_stat[i]=stat[i];   }    return array_stat; } 

i need array_stat array of pointers. in int main() call function *statistics() way:

int main(){   int array_numbers[max_items];   int n_numbers, i=0;   float *calculate_statistics;    calculate_statistics = statistics(array_numbers, n_numbers, ptr_mean,     ptr_variance, ptr_stdev, ptr_median);   for(i=0;i<2;i++){      printf("\n[%d] item > %0.2f\n", i+1, *calculate_statistics);   }   free(calculate_statistics);   calculate_statistics=null; } 

someone can me please?

in statistics()

array_stat=(float*)calloc(2, sizeof(float));   for(i=0;i<2;i++){     array_stat[i]=stat[i];   } 

in main()

for(i=0;i<2;i++){      printf("\n[%d] item > %0.2f\n", i+1, calculate_statistics[i]);   } 

do ever want array of 2 floats? might better off using struct.


Comments

Popular posts from this blog

c# - Validate object ID from GET to POST -

node.js - Custom Model Validator SailsJS -

php - Find a regex to take part of Email -