我有 2 个 struct
:
struct A
{
B *b;
}a;
struct B
{
int* Info;
} b;
如何在 C 中执行信息的 memset
?
memset((a->b->Info,0,sizeof(int));
Info 必须是带有 0 的 memset
。必须对 34 个值执行此操作。这可以通过 for 循环完成吗?
提前致谢!
最佳答案
定义结构时,实际上是在创建用户定义的数据类型。在上面的代码中,A 是数据类型,a 是该类型的变量。 B 和 b 也是如此。
a.b -> Info
是您应该如何通过 A 访问信息,在您的情况下。 .
运算符用于访问使用普通结构变量(非指针)的结构成员。如果您定义了类型 A 的指针 x
,那么您应该使用 x->b->Info
。
您可以从这里了解 C 结构:
关于c - 如何执行结构的指针变量的内存设置,该结构是 C 中另一个结构的指针变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20660837/