keil字体变成黑色,也没有行数显示是怎么回事

keil字体变成黑色,也没有行数显示是怎么回事。关键字啥的也不标出来了,有点急,该怎么改

img

可能是你改了界面设置吧,去搜一下怎么Keil显示行号,记得有个窗口有很多设置的,包括C,C++编辑,字体啥的

不知道你这个问题是否已经解决, 如果还没有解决的话:
  • 你可以看下这个问题的回答https://ask.csdn.net/questions/7710152
  • 除此之外, 这篇博客: keil开发:如何让所需函数不被优化?中的 实例 部分也许能够解决你的问题, 你可以仔细阅读以下内容或者直接跳转源博客中阅读:

    比如:

    oid (*vtable)();          //函数指针
    
    vtable = (void (*)()) (0x08000000);//定位到指定的入口地址0x08000000
    
    (*vtable)();//假如地址0x08000000放的是entry函数,则调用entry()函数
    

    这样编写代码的目的是为了在(*vtable)();处调用entry()函数,但编译器并不知道开发者的意图,仍会按照自己的逻辑把entry()优化掉,因为它认为该函数并未被调用,则在链接阶段,就不会把该函数链接进去。

    因此,当执行(*vtable)();时,里面的内容则不是entry()的代码了,可能产生不可预知的错误。

    那,我们可以告诉编译器不要去优化entry()这个函数吗?可以的,这时我们可以使用链接器命令:--keep=section_id 此选项保证在删除未使用节时,不能删除指定的输入节。


如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^