让我们有一个结构体structure_s,其中包含元素par1(int)和par2[](int数组)。在函数中,我们必须在结构 [m] 中的特定索引处找到 par2 的总和?你是怎么做到的?
int function(struct structure_s *ps){
//something that determinates index
for(int j = 0; j < m; j++){
//and now how do I get to the structures[index].par2[j]
}
}
//the variables n and m are known beforehand
struct structure_s{
int par1;
int par2[n];
}
int main(void){
struct structure_s structures[m];
int sum = function(structures);
//etc.
不幸的是,他们没有在课堂上展示这一点,我找不到太多有用的信息。
我尝试过使用 (*(ps + index)).par2[j],但它不起作用,它说指向未定义类型的指针。我还想也许当我将它传递给函数时应该是 &structs,但仍然是同样的错误。还有 (p)[index].par2[j] 和 ((p)[index]).par2[j],但不知道该使用什么。有什么想法怎么做吗?
您的
m
数组中有 structures
个元素,每个元素都有一个由 int
元素组成的 n
数组。
这是循环结构和项目内数组的方法:
for (i = 0; i < m; i++) {
for (j = 0; j < n; j++) {
//do something with ps[i].par[j]
}
}
我没有声明变量,我想它们已经被声明了。