This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TMS320F28069:编译器错误-函数内静态数组的初始化

Guru**** 2539740 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1215127/tms320f28069-compiler-bug---initialisation-of-static-array-inside-function

器件型号:TMS320F28069

我在 C2000编译器版本中发现了错误  TMS320C2000 v21.6.0.LTS

在 C 编程语言中、如果要将静态数组初始化为全零、则必须执行以下操作:

  静态 int monkey[5U]={ 0 };

在 C++编程语言中,你不需要这个0 ,你可以做:

  静态 int monkey[5U]= {};

即使 C2000编译器是 C++编译器、但它也需要以前的语法。 如果您使用后一种语法、数组会这样做 不会 0的符号组合。

我今天上午花了几个小时调试代码,想知道为什么出现故障,直到我发现阵列未初始化为零。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Thomas、  

    感谢您提请我们注意此内容。 我们正在对其进行研究、并将很快与您联系。

    谢谢。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    请在 C28x 编译器手册  中搜索标题为"在 COFF ABI 模式下初始化静态和全局变量"的子章节。

    谢谢。此致、

    -George.