结构体指针和其他指针变量
时间: 2023-08-31 09:09:51 浏览: 92
结构体和指针
结构体指针和其他指针变量在使用上有一些区别。
首先,结构体指针是指向结构体的指针变量,它存储的是结构体对象的地址。通过结构体指针,可以方便地访问和操作结构体对象的成员。可以使用箭头运算符 "->" 来访问结构体指针所指向的结构体对象的成员。
例如,有如下定义的结构体和结构体指针:
```c
struct Person {
char name[20];
int age;
};
struct Person *ptr;
```
可以通过以下方式给结构体成员赋值:
```c
strcpy(ptr->name, "John");
ptr->age = 25;
```
另一方面,其他指针变量可以指向任何类型的数据,不仅仅局限于结构体。通过其他指针变量,可以访问和操作不同类型的数据。
例如,有如下定义的整型指针和字符型指针:
```c
int *intPtr;
char *charPtr;
```
可以通过以下方式给指针变量赋值:
```c
int num = 10;
intPtr = #
char ch = 'A';
charPtr = &ch;
```
然后,可以通过解引用操作符 "*" 来访问指针变量所指向的值:
```c
printf("%d\n", *intPtr); // 输出:10
printf("%c\n", *charPtr); // 输出:A
```
综上所述,结构体指针和其他指针变量在使用上有一些区别,结构体指针用于访问和操作结构体对象的成员,其他指针变量可以指向任何类型的数据。
阅读全文