一个结构体名字是个指针 这个指针的地址是结构体的第一个成员?还是与成员没关系?

2024-12-19 17:51:17
推荐回答(4个)
回答1:

这个是指针的名字与成员没有直接关系。它就是一个名字而已。

只不过用这个名字去声明的结构体变量全部都是指向该结构体的指针,并且声明的时候不需要加*而已。(通过变量访问的时候还是要用*的)
一种声明的方法,方便程序里的处理,仅此而已。

回答2:

结构体就是一个普通数据类型,它和类很像,不同之处在于结构体默认的数据成员是公共的,类默认的数据成员是私有的,在C里面没有类的概念,只有结构体。C++里面有了类的概念,为了兼容C所以把结构体也加进来,当然在继承方面结构体和类的区别是很大的,具体的查查资料,在C++里面通常用结构体来组合几个数据,方便管理这几个数。
至于结构体和指针,你可以用以个指针指向一个结构体,而这个指针本身的地址和结构没有任何关系,只是该指针的内容存储的是一个结构体的地址,当然结构体内的所有数据肯定是依次排列的,你能拿到结构体的地址,就肯定能拿到这个结构体里面的任何成员。

回答3:

结构体名字实际上不是指针,跟数组指针不一样的。

应该直接把他理解成 普通类型,并且把结构体解释成一个整体。

回答4:

它是一个指向结构体的起始位置的指针。