野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 20126|回复: 8

定义了局部变量 不能赋值 call stack + locals 显示 not in scope

[复制链接]
发表于 2013-12-24 18:39:55 | 显示全部楼层 |阅读模式
回复

使用道具 举报

发表于 2013-12-24 18:58:51 | 显示全部楼层
开了 优化 ,编译器会进行优化,有些局部变量,编译器认为没用就 删掉
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-12-24 19:03:20 | 显示全部楼层
风落小鱼 发表于 2013-12-24 18:58
开了 优化 ,编译器会进行优化,有些局部变量,编译器认为没用就 删掉

已经打到 默认了呢 没开优化
回复 支持 反对

使用道具 举报

发表于 2013-12-24 19:13:29 | 显示全部楼层
a c d 是局部变量,一旦进入其他子程序,则空间释放,因此提示"Not in scope"。
回复 支持 反对

使用道具 举报

发表于 2013-12-24 19:15:07 | 显示全部楼层
小手冰凉 发表于 2013-12-24 19:03
已经打到 默认了呢 没开优化

默认是 优化等级为 1 ,不是 不开优化。

要不就是 你的代码 还没用到这些变量,所以 编译器 还没分配栈空间
回复 支持 反对

使用道具 举报

发表于 2013-12-24 19:18:01 | 显示全部楼层
要看的话改成全局变量,使用watch window ,在里面输入变量名来观察
回复 支持 反对

使用道具 举报

发表于 2013-12-24 19:20:55 | 显示全部楼层
小手冰凉 发表于 2013-12-24 19:03
已经打到 默认了呢 没开优化

默认是 优化等级为 1 ,不是 不开优化。

要不就是 你的代码 还没用到这些变量,所以 编译器 还没分配栈空间
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-12-24 22:55:08 | 显示全部楼层
风落小鱼 发表于 2013-12-24 19:20
默认是 优化等级为 1 ,不是 不开优化。

要不就是 你的代码 还没用到这些变量,所以 编译器 还没分配栈 ...

默认的是 level 0 给改成默认 《default》 也没用
回复 支持 反对

使用道具 举报

发表于 2014-4-11 14:17:40 | 显示全部楼层
我取消优化等级后,就好了强烈支持,非常感谢哥们
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-9-28 13:26 , Processed in 0.030473 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表