请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

运行结果不一致

老师,我本地这代码运行下来结果不一致,代码如下:

#include <stdio.h>
void main() {
    const int rgb = 0xFF0000;
    printf("old val: %x\n", &rgb);
    int *a2 = &rgb;
    *a2 = 3;
    printf("new val: %d", rgb);
}

有时候运行结果是输出两条log,有时候运行结果是下图。通常运行第一次或者第二次的时候会报错,多运行几次又正常了。

图片描述

正在回答 回答被采纳积分+3

1回答

bennyhuo 2021-01-14 20:12:33

这个是编译器的警告。如果你不修改代码直接编译会用上一次的结果,因此就不会再有警告了(其实不是真的没有警告,只是因为跟上一次结果一样所以没有触发编译流程)。

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号