gpt4 book ai didi

c - “MS Visual Studio快速监视”窗口中的结构布局显示不正确

转载 作者:行者123 更新时间:2023-12-01 08:57:03 24 4
gpt4 key购买 nike

我有一个看起来像这样的结构定义:

struct mystruct
{
int first;
int second;
};

我最近更新了它,添加了更多成员:
struct mystruct
{
int first;
int additional1;
int additional2;
int second;
};

我正在调试看起来像这样的代码:
mystruct object;
...
object.second = 128;
printf("%d\n", object.second);

执行完代码后,我在“快速监视”窗口中查看 object.second并看到0;否则,返回0。但是,代码输出 128。当我查看 object时,我仅看到 firstsecond成员,就好像“快速监视”窗口仍在使用我的旧结构声明一样。

另外,如果我从代码中打印 object.second的地址,则与我在“快速监视”窗口中看到的地址(如果我在其中输入 &object.second时所看到的地址不同)(相差几句话;我的结构实际上包含数十个成员,为简洁起见,省略了此内容)。

我试图通过重新编译,重新启动,还原最近的更改(我使用版本控制系统)并返回它来解决这些不兼容问题。我还能尝试解决什么问题?

我使用MS Visual Studio2005。我的代码实际上是C++,但这部分属于C / C++通用子集。

最佳答案

当您编写mystruct object;时,它可以在Visual Studio 2005上运行,但是当您使用普通的结构分解而不使用typedef时,编写它的正确方法需要是struct mystruct object;,如here所述。

我不确定这是否困扰您,但请尝试一下。

关于c - “MS Visual Studio快速监视”窗口中的结构布局显示不正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9605651/

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