我看到有很多关于memcpy的文章,但我无法找到解决问题的方法。有人能看出为什么复制行动不起作用吗?
float MeanFilter(const volatile float *Array, volatile float Dist){
float Avg = 0.0; // Variable used to calculate the average distance value
float Sorted[MaxDistArray]; // Array used to contain the sorted array
printf("\n");
int j;
for(j = 0; j < 20; j++){
if(j == 10) printf("\n \t");
printf("%d: %f, ", j+1, Array[j]);
}
memcpy(Sorted, &Array[0], sizeof(float));
Sort(Sorted); // Sort the array of distances values
printf("\n");
for(j = 0; j < 20; j++){
if(j == 10) printf("\n \t");
printf("%d: %f, ", j+1, Sorted[j]);
}
答案 0 :(得分:0)
Idd @Ronald是解决方案的一部分
memcpy(Sorted, Array, sizeof(float)*MaxDistArray);
THX!