5012| 15
|
子函数里面,进行for循环赋值,却发现并没有正确赋值,请问是什么原因? |
5金钱
最佳答案你看一下你的编译优化等级,有的时候会被优化掉,如果想继续深究可以看看执行到赋值时的汇编。
本身 这个deb_temp[50]是个局部变量,数据在栈中,作用域仅仅在这个子函数里,如果你这个子函数已经全部贴出来了,那就是说你的这个局部变量数组仅仅赋值了,没有任何操作,所以编译器会进行优化。你定义为全局变量的时候,数据在静态全局区,有确定的地址,这时编译器不一定会去优化。
其实你可以这样定义在你的数组定义前加个v ...
| ||
| ||
机器生汇编,汇编生B,B生C,C生万物.... 经过长期对C语言的研究,目前只有两个方面不懂:这也不懂,那也不懂
https://github.com/ianhom |
||
| ||
学无止境
|
||
| ||
小小蜗牛
|
||
| ||
| ||
学无止境
|
||
| ||
小小蜗牛
|
||
| ||
有软件开发经验,从0硬件基础学习STM32开发。
|
||
| ||
小小蜗牛
|
||
| ||
| ||
机器生汇编,汇编生B,B生C,C生万物.... 经过长期对C语言的研究,目前只有两个方面不懂:这也不懂,那也不懂
https://github.com/ianhom |
||
| ||
小小蜗牛
|
||
| ||
| ||
| ||
| ||
|手机版|OpenEdv-开源电子网
( 粤ICP备12000418号-1 )
GMT+8, 2025-7-22 03:15
Powered by OpenEdv-开源电子网
© 2001-2030 OpenEdv-开源电子网