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.

[参考译文] CCS/MSP430F6636:CCS生成错误,缺少分号

Guru**** 2553260 points


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

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/583600/ccs-msp430f6636-ccs-build-error-with-missing-semicolon

部件号:MSP430F6636

工具/软件:Code Composer Studio

您好,

我不知道为什么,但是我的CCS ver 7.0 .0.0.0042万 在头文件中没有检测到缺少分号。 当我尝试编译代码时,我在5个不同的文件中得到了100个错误,除了缺少分号行!  

请在下次更新时修复!

BS

克里斯

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

    哈比森和斯泰尔:
    "在C源程序中,空白(空格),行尾,垂直制表符,换页码和水平制表符(如果存在)统称为非打印字符...除非这些字符用于分隔标记,否则将忽略这些字符"

    只有预处理程序行使用换行符作为终止字符。 这是合法的C:
    易失性
    内部
    A,
    B,
    C
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    分号的用途是什么? 您实际上是指源文件吗?

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

    Thx Guys的回答是问题与xxx.h文件有关。 例如 ,将用于 F5529的USB的空项目下载到我们的CCS,然后转到 USB_API\USB_MSC_API\ 文件夹,打开USBMSC.h文件并从uint8_t USBMSC_pollCommand(void) 行中删除分号 ,然后编译代码,您将会收到大量错误。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    如果您的意思是"我",则分号将终止通常写入的语句:
    易失性int a,b,c;

    我只是病态的。 但编译器编写者必须考虑病理学案例。

    我认为没有分号的c文件是不可能的。 8^)

    它们可以很容易地显示在头文件(.h)或程序文件(.c)中。 我不确定你所说的"来源"是什么意思。 我引用了哈比森和斯泰尔的话-所以这必须是正确的。 8^)
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您偶然发现了一个棘手的问题。 如果编译器仍接受旧式C函数定义,则它可能会走得非常远。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我同意您的看法,因为您知道头文件是一个包含C声明的文件,而宏定义文件没有任何源代码,因此编译器应该知道是否是头,缺少分号表示错误。 然后转到与Visual Studio类似的行,我是否需要看到额外的100个错误?

    我知道您可以说您总是需要分号,但您可以移动一些代码粘贴,将会丢失8^)
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我感到您的痛苦,但生成良好的错误消息非常困难。 我知道,因为我写了一个解析器并使用了C表达式语法。 即使有了这一小部分的语言,我也发现在某些情况下很难产生有意义的错误。

    请注意,具有更好消息(如Visual Studio和Clang)的编译器具有最多的资源。 我知道gcc在这方面也很差。 通常情况下,方法是只关注第一个错误,然后修复并重试。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我认为不可能有没有分号的c文件。 8^)
    [/引述]

    对于娱乐值,请考虑"int main(){}",这是严格符合的。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我知道这一点,因此笑了起来。
    只有 #defines的.h文件 也不会有分号。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    啊,你看不出来,我知道你知道!