打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
VS2010无法查看自定义的普通变量解决办法( CXX0017: 错误: 没有找到符号 )
在使用VS2010调试程序时,可以通过”局部变量“窗口查看程序中局部变量的值,但是在一个方法中的自定义的普通变量怎么查看值呢?可以在监视窗口中添加你想跟踪监视的值的名称,但是今天遇到了一个问题,就是将我想跟踪的变量名(如循环中的i)添加到”监视1“窗口时,会提示”CXX0017:错误:没有找到符号”。在http://blog.csdn.net/xunixing/article/details/7892898 找到了答案,用了第一种方法就搞定了。这样在调试时,将鼠标放到你想查看的变量上面,就会显示它的值。感谢。
编程环境:Visual Studio 2010
首先确定是在 Debug 配置状态。
初始解决方案如下:
错误现象:CXX0017: Error: symbol this not found方法 1:将编译优化选项设置为"/Od"就可以了。工程右键 -> Properties -> Configuration Properites -> C/C++ -> Optimization -> Optimization: Disabled(/Od)注:如果解决,程序可能存在逻辑错误方法 2:将VS生成的工程文件全部删除,(Debug目录下的pdb文件),然后全部重新生成3. 如果未解决,可能是 Visual Studio 2010 自身bug问题。见 MSDN bug reporthttps://connect.microsoft.com/VisualStudio/feedback/details/613569/cannot-inspect-local-variables-while-debugging-in-vs2010-cxx0017-symbol-not-found-error#details情况 1. [cpp]view plaincopy
int _tmain(int argc, _TCHAR* argv[])
{
float f = 123.0;   //声明并初始化
if(false)
{
int str1;   //if中声明新变量。关键!去掉此处可以解决问题,所以可在 if 外声明
}
else
{
//else中声明的变量在调试时,出问题
int str2;
int a = 123;
a++;
}
return 0;
}
情况 2. 解决方案 将 k 作为局部变量使用,即for(int k=0;k<2;k++)[cpp]view plaincopy
#include <stdio.h>
int main()
{
int arr[5];
int k;    //循环变量,非局部
float f=123;
for(k=0;k<2;k++)
{
arr[k] = 2;
int t = 5;
printf("%d\n",t);
}
int i = 2;
if(i > 0)    //if从句内出现的 新变量,也会出现问题
{
int joke;
printf("waht\n");
}
return 0;
}
以上只是已测试的情况,如果类似问题,可参考进行调试
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
第八章:异常
11个高效的VS调试技巧
MT4编程初级手册(4):自定义函数
SCSS 文件里的感叹号用法 - 给变量设置默认值
MT4编程实例:箭头符号
西门子s7-300符号表应用
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服