将struct设置为指向struct的指针中的内容
这就是我如何声明我的结构和指向该结构的一个指针将struct设置为指向struct的指针中的内容,c,pointers,struct,C,Pointers,Struct,这就是我如何声明我的结构和指向该结构的一个指针 struct com rt, cur; struct com *hold; 我将rt的内容保存到cur中。因为cur将在不同的功能中进行编辑。然后我想从指针hold获取内容,并将它们保存到rt中。这就是我的*rt=hold但它抛出并出错错误:一元'*'的类型参数无效(具有'struct com') 我不确定最后一行应该是什么。然后我想从指针中获取内容,按住并将其保存到rt 要做到这一点,请尝试 cur = rt; hold =&a
struct com rt, cur;
struct com *hold;
我将rt的内容保存到cur中。因为cur将在不同的功能中进行编辑。然后我想从指针hold
获取内容,并将它们保存到rt
中。这就是我的*rt=hold代码>但它抛出并出错错误:一元'*'的类型参数无效(具有'struct com')
我不确定最后一行应该是什么。然后我想从指针中获取内容,按住并将其保存到rt
要做到这一点,请尝试
cur = rt;
hold =&cur;
//call function to edit cur
rt = *hold;
hold
是一个指针,要获取它所指向的结构内容,需要取消对指针的引用,这意味着*hold
现在,您要存储在rt
中的结构内容,所以只需使用rt
,因为它只是一个普通变量。*hold
是指针,而hold
是指针的地址。现在*rt
是指针,您所做的是指针=地址,这是错误的
将struct设置为指向struct的指针中的内容
要从(指向结构的指针)获取内容,我们需要遵从(指向结构的指针)。在这种情况下,hold
是您的(指向结构的指针),因此遵从意味着*hold
然后我想从指针保持中获取内容并保存它们
进入rt
rt=*hold
rt不是指针类型,它是一个常规结构com。因此,您不能用星号取消对它的引用。@scerrecrow但我想获取hold
所指向的内容,并将其设置为rt
rt=*hold
,但您可以完全放弃hold
,改用&cur
。
cur = rt;
hold =&cur;
//call function to edit cur
rt = *hold;