一结构体包含另一结构体的头指针和尾指针,改变其一指针但另一个也会变化,为什么?

最开始q→front和q→rear都指向空,在队列入队的时候,因为之前我定义了一个新的结构体,包含了队列的头指针和尾指针
,但是当我修改一节结构体q的front或者q的rear的时候,两个指针都会被改变,也就是说不管你是修改front还是rear,两个指针的next都会发生变化,请看下图的45行代码前后,所以问题是为什么q定义的结构体里包含的两个指针,但凡有一个指针的next被修改,则另一个也会被修改,这涉及到什么底层原理?
执行45行代码前

执行45行代码前

img

执行45行代码后

img

两者指向变化

img

看调试信息,貌似 front和rear开始指向的都是同一个地址 308, 如果是这样你改了一个其它那个一样改也是对的啊

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^