parse error before ***的原因

时间:2021-01-31 17:04:03
代码如下:

struct cli_tree
{
  /* Current mode.  */
  int mode;

  /* Privilege level.  */
  u_char privilege;
  cl_vector modes;

  /* Vector of configuration output function.  */
  cl_vector config_write;

  /* Node to be executed.  */
  struct cli_node *exec_node;
  cl_vector v;
  cl_vector t;
  int expand_node;
  int show_node;
  int argc;
  /*
#define CLI_ARGC_MAX               128
#define CLI_ARGV_MAX_LEN           256
*/
  char *argv[CLI_ARGC_MAX];
  struct cli_node *modifier_node;
  int argc_modifier;
  char *argv_modifier[CLI_ARGC_MAX];
  char *rem;
  char *invalid;
  char *pipe;
  int advanced;
};



编译后总提示:
parse error before 'cl_vector'
parse error before 'v'
parse error before 't'
parse error before '}'
但是实在是找不到问题在哪,请高手赐教!

7 个解决方案

#1


语法错误,应该是没有把用'cl_vector' 的声明放在使用'cl_vector' 之前

#2


请问cl_vector是什么呢^_^?

#3


cl_vector是在一个头文件中定义的,已经在这个文件头包含了的!

#4


把你的typedef  ***   cl_vector放到最前面

#5


谢谢了   可以了

但是我饱含了头文件了啊 应该是在前面
有点想不通

#6


我在你的程序前面加了
#include <vector>
using namespace vector;
typedef vector<int>  cl_vector;  
#define CLI_ARGC_MAX              128 
编译时没出现任何错误,你再仔细检查定义的变量类型前后是否一致,
或者是否程序中夹杂的有中文空格

#7


谢谢楼上的 我这里的vector不是c++里面的向量容器,是c里面自己定义的一个结构体而已

#1


语法错误,应该是没有把用'cl_vector' 的声明放在使用'cl_vector' 之前

#2


请问cl_vector是什么呢^_^?

#3


cl_vector是在一个头文件中定义的,已经在这个文件头包含了的!

#4


把你的typedef  ***   cl_vector放到最前面

#5


谢谢了   可以了

但是我饱含了头文件了啊 应该是在前面
有点想不通

#6


我在你的程序前面加了
#include <vector>
using namespace vector;
typedef vector<int>  cl_vector;  
#define CLI_ARGC_MAX              128 
编译时没出现任何错误,你再仔细检查定义的变量类型前后是否一致,
或者是否程序中夹杂的有中文空格

#7


谢谢楼上的 我这里的vector不是c++里面的向量容器,是c里面自己定义的一个结构体而已