错误:在' - >'之前预期'=',',',';','asm'或'__attribute__''令牌,我错过了那条线之前的东西吗?

时间:2014-01-24 23:54:41

标签: c

#include <video_defines.h>
#include <stdio.h>
#include <stdint.h>
#include <x86/asm.h>

#define HIDDEN 1
#define NOT_HIDDEN 0

typedef struct{
  int row;
  int col;
  int color;
  int cursor;
}console_info;

/* Setting up console info */
console_info *console;
console->row = 0;
console->col = 0;
console->color = (FGDN_WHITE | BKGN_BLACK);
console->cursor = NOT_HIDDEN;

不知道为什么会出现这些错误。

console.c:19: error: expected '=', ',', ';', 'asm' or '__attribute__' before '->' token
console.c:20: error: expected '=', ',', ';', 'asm' or '__attribute__' before '->' token
console.c:21: error: expected '=', ',', ';', 'asm' or '__attribute__' before '->' token
console.c:22: error: expected '=', ',', ';', 'asm' or '__attribute__' before '->' token

这些错误应该意味着我在第19行之前缺少像分号这样的东西。但我无法发现它......

1 个答案:

答案 0 :(得分:6)

您不能在函数外部使用非声明语句。将代码放在函数中,例如main

console_info * console;

int main()
{
    console = malloc(sizeof(console_info));  // just an example
    console->row = 0;
    // ...
}