我有两个类型为int
的数组。每个元素的长度约为17901个元素。一个代表高度,另一个代表空速。我想划分两个数组(此划分将导致马赫数)。我该怎么做?
这是我目前正在使用的代码:
for (i = 0; i < ((size / 2) + 1); i++) { // size/2 here is 17901
machNumber[i] = (ASarray[i] / soundspeed[i]);
}
最佳答案
将((size/2)+1
替换为计算的大小sizeof(ASarray)/sizeof(*ASarray)
这样,毫无疑问的循环。当然,必须静态定义ASarray的大小(必须未使用malloc分配内存)。
for(i = 0; i < sizeof(ASarray) / sizeof(*ASarray); i++) {
machNumber[i] = (ASarray[i] / soundspeed[i]);
}