什么时候用' . '什么时候用'->'
时间: 2023-05-17 17:07:58 浏览: 119
当你要访问一个对象的成员变量或成员函数时,如果这个对象是一个指针,你需要使用'->',否则你需要使用'.'。例如,如果你有一个指向结构体的指针,你需要使用'->'来访问结构体的成员变量或成员函数,如果你有一个结构体的实例,你需要使用'.'来访问结构体的成员变量或成员函数。
相关问题
结构体指针中什么时候用.什么时候用->
在使用结构体指针访问结构体成员时,使用`.`和`->`的规则如下:
1. 如果你有一个结构体变量,可以直接使用`.`来访问结构体的成员,例如 `s.name`。
2. 如果你有一个指向结构体的指针,需要使用`->`来访问结构体的成员,例如 `ptr->name`。
这是因为`.`运算符用于直接访问结构体变量的成员,而`->`运算符用于通过指针访问结构体的成员。
例如,在上面的示例代码中,我们定义了一个指向结构体数组`s`的指针`ptr`。当我们使用指针访问结构体成员时,需要使用`->`运算符,如`ptr->name`、`ptr->age`和`ptr->score`。这是因为`ptr`是一个指针,需要通过`->`来间接访问结构体成员。
当我们直接访问结构体变量`s[i]`的成员时,应使用`.`运算符,如`s[i].name`、`s[i].age`和`s[i].score`。这是因为`s[i]`是一个结构体变量,可以直接通过`.`来访问其成员。
总而言之,当你有一个结构体变量时,使用`.`;当你有一个指向结构体的指针时,使用`->`。
c语言结构体什么时候用->,什么时候用.
在C语言中,结构体变量可以通过"."或"->"来访问其成员变量。其中,"."是用于访问结构体变量的成员变量的运算符,而"->"是用于访问结构体指针变量的成员变量的运算符。
使用"."操作符来访问结构体变量的成员变量,例如:
```
struct student {
char name[20];
int age;
};
struct student s1;
s1.age = 18;
```
使用"->"操作符来访问结构体指针变量的成员变量,例如:
```
struct student {
char name[20];
int age;
};
struct student *ps;
ps = (struct student *)malloc(sizeof(struct student));
ps->age = 18;
```
需要注意的是,如果结构体变量是一个指针,则必须使用"->"操作符来访问其成员变量。如果结构体变量是一个非指针变量,则必须使用"."操作符来访问其成员变量。
相关推荐
![jar](https://img-home.csdnimg.cn/images/20210720083455.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)