0

下面是ac文件的内容。我正在生成一个查找表,当 test.c 时,当我尝试将其编译到测试程序中时,出现以下错误:

In file included from test.c:1:
lut.h:1: error: expected â=â, â,â, â;â, âasmâ or â__attribute__â before âvaluesâ

有没有人对此错误有任何见解?我正在尝试将此查找表包含为 .c 文件以供使用。(我不会选择这样做,但这是一个要求)。

        static const int16_t values[] = 
        {
            29, 30, 31
        };

我正在使用的测试程序(只是为了测试编译)是:

#include <stdio.h>
#include "lut.h"
int main ()
{
    printf("success\n");
    return 0;
}

我编译:

gcc test.c
4

2 回答 2

1

我无法重现此问题。我有lut.h

#include <stdint.h>

static const int16_t values[] = {
  29, 30, 31
};

并在test.c

#include <stdio.h>
#include "lut.h"

int main() {
  printf("%d\n", values[1]);
  return 0;
}

我得到:

$ gcc test.c
$ ./a.out
30

你能提供更多信息吗?也许复制粘贴你的样子lut.h

于 2013-11-12T05:49:17.233 回答
1

你还没有定义int16_t. 尝试包括stdint.h

于 2013-11-12T05:49:46.167 回答