問題タブ [attiny]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c - これは何を意味するのでしょうか?#定義 TIMER_PASTE_B(lft,t,rgt) lft##t##_##rgt
ATTiny85 トーン コア ライブラリで次の関数定義を見つけました。それが何を意味するのか、どのように機能するのかわかりません。関数名を作成するために非常に頻繁に使用されますが、構文がどのように機能するかはわかりません。
これは、関数で行ったトレースバックです。定義には多くの定義があります。
最初のインスタンス:
次に、tonetimer_ 関数をトレースして、次のように定義します。
次に、次のように定義された TIMER_PASTE_A 関数を見つけました。
最後に、TIMER_PASTE_B の定義を次のように見つけました。
ここで行き詰まりました。私はその構文に従うことができませんでした。私は簡単な置換を行っても問題ありませんでした。ただし、## は私を悩ませます。
したがって、置換を行った後、最終的なコマンドは次のようになります。
しかし、その機能がどのように実行されるかはわかりません。これは定義でも関数でもありません。
誰かが何か考えがありますか?
ありがとうございました。