2015-06-04 66 views
1

我試圖複製一個C語法,我可以將可變數量的字符串連接成一個字符串,如printf支持。這裏有一個例子:連接YACC令牌

log("here is line 1, " 
    "and here is line 2"); 

我現在有一個支持獨立的參數如下:

| LOG LPAREN STRING COMMA STRING RPAREN { 
    func($$, LOG, STR_ST, STR_ST, $3, $5); } 

我希望能夠多STRING令牌Concat的進入,然後可以傳遞給一個字符串FUNC。這可能嗎?

回答

2

是的,你只需要使用你的參數通常的分離列表生產。

LOG '(' PARAMS ')' {...} ; 

PARAMS : STRING 
     | PARAMS ';' STRING 
     ;