'*'标记之前的语法错误

时间:2012-03-26 13:49:20

标签: c syntax

int main() {
    return 0;
}

const uint8_t* byteHunter(const uint8_t *Search, uint16_t sLength, 
                          const uint8_t *Pattern, uint16_t pLength) { 
    // This is the body of the function
}

编译此函数界面时出现错误:

19 C:\Users\Anne\Documents\School\Sophomore\Spring2012\CS 2505\HW09.c syntax error before '*' token

除了功能界面上方的注释外,我的代码中根本没有别的东西。我做错了什么?

3 个答案:

答案 0 :(得分:3)

默认情况下,类型uint8_t是“未知”,除非你#include <stdint.h>向编译器声明uint8_t实际上是什么。

答案 1 :(得分:0)

它可能不知道uint8_t类型。包括<stdint.h>或定义uint8_t的任何地方。

答案 2 :(得分:0)

在这种情况下,这清楚地暗示了*之前部件出现了问题。由于存在一个名为的类型,因此编译器现在很可能不知道这种类型,这很可能是由您忘记包含的某些头文件引起的。

在这种情况下,您必须包含stdint.h(推荐)或以某种方式自己定义类型(使用typedef或预处理器宏)。