私は Bison の初心者ですが、C/C++ ではありません。開発と正規表現のこの時点では、このようなことは聞いたことがありません\n。新しい行に使用されるのは だけですが、の説明は何か知りたいです\t%.10g。コードでは次のようになります。
line: '\n'
| exp '\n' { printf ("\t%.10g\n", $1); }
;
よろしくお願いします。
これは、「タブ文字 (\t) に続いて、小数点以下 10 桁の浮動小数点数を、桁数に応じて指数表記または固定小数点表記 (%.10g) で出力し、その後に改行 (\n) を出力する」ことを意味します。 .
パターンをデコードするためのprintf参照を見てください。
g%eまたは の短い方を使用する%f
ee 文字を使用した科学表記 (仮数/指数)
f10 進浮動小数点
したがって、%.10g有効桁数 10 桁の 10 進数を出力します。
これは正規表現ではなく、printf 形式の仕様です: タブ文字の後に小数点以下 10 桁の浮動小数点数を出力します。そして改行で終わります。
man printf