Error: undeclared variable $

Error: undeclared variable $

当我 运行 下面的 bison 程序(通过 bison file.y)时,我收到错误 missing a declaration type for in 'seq' :

%union {
       char cval;
}
%token <cval> AMINO 
%token STARTCODON STOPCODON

%%
series: STARTCODON seq STOPCODON {printf("%s", );}
seq : AMINO
         | seq AMINO
         ;
%%

我想知道为什么会出现此错误,以及如何正确声明变量

你还没有告诉 Bison seq 是什么类型,所以它不知道如何处理 </code>。</p> <p>使用<code>%type指令:

%type <cval> seq

请注意,用于 </code> 的类型是单个 <code>char,它不是 "%s" 格式所期望的字符串。您需要想出一种方法来从序列中创建您自己的字符串。