struct student* stu_a=(struct student *)a;

struct student* stu_a是什么?

struct student* stu_a 是一个struct student* 类型的指针变量。它用于存储 struct student 对象的内存地址。该指针允许访问和操作存储在 struct student 对象中的数据。

 (struct student *)a是什么?
   

(struct student *)a用于将指针a转换为struct student*类型的指针。 希望将其空指针 (void*) 指向特定类型的指针时,这很有用。在本例中为 struct student*。 类型转换允许将转换后的指针分配给变量 stu_a,然后可以使用它来访问 struct student 对象的成员。

struct student* stu_a和(struct student *)a有什么区别?
 

struct student* stu_a 是一个变量声明,它定义了一个名为 stu_a 的指针变量,类型为 struct student*。 它用于存储 struct student 对象的地址。 另一方面,(struct student *)a 是类型转换表达式。 它用于将指针 a(具有不同类型,例如 void*)显式转换为 struct student* 类型的指针。 此类型转换允许您将 a 视为指向 struct student 对象的指针。 总之,struct student* stu_a 是变量声明,而 (struct student *)a 是类型转换表达式。 前者声明一个特定指针类型的变量,而后者将指针转换为不同的类型。

 

猜你喜欢

转载自blog.csdn.net/m0_62865498/article/details/130817238