结构体数组传参以后为什么用的是.
时间: 2024-10-21 08:05:00 浏览: 12
在C语言中,结构体数组作为函数参数传递时,通常会使用`.`运算符是因为它表示成员访问。当你在函数内部通过`.`来引用结构体数组中的元素时,实际上是在操作这个数组对应位置上每个结构体的成员值。例如:
```c
struct Student {
char name[20];
int age;
};
void display(Student students[], int size) {
for (int i = 0; i < size; i++) {
printf("Name: %s, Age: %d\n", students[i].name, students[i].age);
}
}
int main() {
struct Student studentArray[] = {{"Alice", 20}, {"Bob", 22}};
display(studentArray, sizeof(studentArray) / sizeof(studentArray[0]));
return 0;
}
```
在这个例子中,`display`函数通过`.`访问`studentArray`里的`name`和`age`字段。`.`不是用于数组索引,而是直接用于访问结构体内的数据成员。所以,当我们想要处理整个数组的每个元素时,就需要连续地使用`.`。如果你看到类似`students[i]`这样的形式,实际上是索引数组并获取第i个结构体。
阅读全文