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

C MS Visual Studio快速监视窗口中的结构布局显示不正确,c,visual-studio,visual-studio-2005,C,Visual Studio,Visual Studio 2005,我有一个如下的结构定义: struct mystruct { int first; int second; }; mystruct object; ... object.second = 128; printf("%d\n", object.second); 我最近对其进行了更新,添加了更多成员: struct mystruct { int first; int additional1; int additional2; int second;

我有一个如下的结构定义:

struct mystruct
{
    int first;
    int second;
};
mystruct object;
...
object.second = 128;
printf("%d\n", object.second);
我最近对其进行了更新,添加了更多成员:

struct mystruct
{
    int first;
    int additional1;
    int additional2;
    int second;
};
我正在调试如下所示的代码:

struct mystruct
{
    int first;
    int second;
};
mystruct object;
...
object.second = 128;
printf("%d\n", object.second);
执行完代码后,我查看Quick Watch窗口中的
object.second
,看到0;但是,代码输出
128
。当我查看
对象
时,我只看到
第一个
第二个
成员,就好像Quick Watch窗口仍然使用我的旧结构声明一样

此外,如果我从代码中打印
object.second
,则它的地址与我在快速观察窗口中看到的地址不同,如果我在那里输入
object.second
(只需几句话;我的结构实际上包含几十个成员,为了简洁起见,我省略了这些成员)

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


我使用微软VisualStudio2005。我的代码实际上是C++,但是这部分属于C/C++公共子集。

当你写<代码> MyStult对象时,<代码>它可以在VisualStudio2005上工作,但是当您使用普通的struct declaration而不使用typedef时,编写它的正确方法需要是
struct mystruct object如上所述


我不确定这是否是困扰您的问题,但请试一试。

您是否尝试删除PDB和/或NCB文件?没有帮助(感谢您的想法),您说代码在一个公共子集中-您重建了它(我假设它是一个库)?“你在用什么来表达你的喜欢吗?”tinman是的,我试着重建它;不,我不使用自定义数据类型显示;我所有的类型都只是结构/整数