结构体指针

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了结构体指针相关的知识,希望对你有一定的参考价值。

一、定义结构体变量的两种方法:

1、在主函数内部进行定义

结构体指针_主函数

图中所述  struct fun first

其中的first就是一个结构体变量的名称


2、定义结构体时顺便定义

结构体指针_运算符_02

例如图中的a


二、如何实现结构体变量的内容复制?-------

直接引用

C语言规定相同类型的结构体变量可以整体赋值

例题

结构体指针_主函数_03

TIP:单个结构体初始化时,可以直接大括号进行定义。

结构体指针_结构体指针_04


间接引用(使用结构体指针)

结构体指针_运算符_05

TIP:

不能使用结构体指针变量 . 成员,因为指针不可能有成员!


三、用结构体指针引用结构体变量的成员

其一般形式为 *结构体指针变量. 成员名

原因:若不加(),. 的优先级比 * 高,所以原式就等于*(结构体指针变量. 成员名),而先前我们分析过这样表达是违法的!

结构体指针_主函数_06

TIP:

如图是两种定义结构体指针的方法,注意是将fir 的地址赋给p ,而不是*p ! 非常重要!!!

所以第一种的定义方式第二行是将地址赋给P,而不是*p!

结构体指针_主函数_07

另一种表达方式,更加简洁!(指向运算符)

以上是关于结构体指针的主要内容,如果未能解决你的问题,请参考以下文章

Golang 指针和结构体

结构体指针与结构体变量用作函数参数时有啥区别,在用法上

结构体指针数组和结构体数组指针的区别

C++基础3(函数指针结构体)

C++基础3(函数指针结构体)

结构体内结构体指针是,在函数中对结构体指针进行操作值会发生变化?