gpt4 book ai didi

c++ - 访问嵌套结构的数据成员并将结构传递给函数 C++

转载 作者:行者123 更新时间:2023-11-28 01:20:09 24 4
gpt4 key购买 nike

我有一个简单的问题,但我需要理解它背后的概念。

  • 如何通过将第一个结构实例化为第二个结构中的指针来访问第一个结构的数据成员。

  • 如果我将第一个结构的数据成员作为指针,那么如何通过访问它们来打印出那里的值,例如

    结构温度
    {
    整数 = 5;
    float b = 6.0;
    我 = &a;
    f = &b;
    诠释*我;
    float *f;
    };

我正在处理复杂的代码,因此我需要了解它背后的逻辑,因为它在内存和逻辑方面是如何工作的。

非常感谢您提前抽出时间。

#include <iostream>
using namespace std;
struct temp {
int i=5;
float f=6.0;
};
struct qlt {
temp *d;

};

int sum (qlt *s)
{
int a = s->d->i;
// std::cout<<a;
}
int main() {
qlt x;
//int b = ;
std::cout <<sum(&x);
return 0;
}

最佳答案

qlt x;

这会创建一个 qlt 好吧,但不会创建其中的 d。所以你有一个悬空指针(因为它也未初始化)。

qlt x;
temp b;
x.d = &b;

这将是一个 C 风格的解决方案。 C++ 有更好的方法来做到这一点。

此刻忘记所有类指针并使用STL。

关于c++ - 访问嵌套结构的数据成员并将结构传递给函数 C++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56725266/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com