問題タブ [rationale]
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 - 単項 * 演算子に「オペランドは void へのポインタであってはならない」という制約がないのはなぜですか?
C2x、6.5.3.2 アドレスおよび間接演算子、制約、2:
単項 * 演算子のオペランドはポインター型でなければなりません。
「オペランドはポインタであってはならない」という制約がないのはなぜvoid
ですか?
それは次のように推測できますが:
C2x、6.5.3.2 アドレスおよび間接演算子、セマンティクス、4:
単項 * 演算子は間接指示を表します。オペランドが関数を指している場合、結果は関数指定子になります。オブジェクトを指している場合、結果はオブジェクトを指定する左辺値です。
C2x、6.3.2.1 左辺値、配列、および関数指定子、1:
左辺値は、潜在的にオブジェクトを指定する ( void 以外のオブジェクト型を持つ)式です。...