私はマクロを書き込もうとしています:
#define FCT( x ) fct( ($ ## x), (@ ## x).first_line, (@ ## x).first_column )
マクロの出力は、次の例のようになります。
FCT(2) --> fct( $2, @2.first_line, @2.first_column )
残念ながら、これは機能しません@
。エラーが発生するようです。これはCプリプロセッサでも可能ですか?
現在、私はこのマクロを使用しています。
#define FCT(x,y) fct( x, y.first_line, y.first_column )
FCT($2,@2) --> fct( $2, @2.first_line, @2.first_column )
それはうまくいき、私には十分短いですが、最初のマクロがどういうわけか可能かどうか私に尋ねました。