3

私の知る限り、ucontextそれよりも優れたものを提供していますsetjmp。ただし、非推奨になり、POSIX仕様から削除されました。では、なぜそれが表示され、なぜ削除されたのでしょうか。

4

1 に答える 1

4

makecontextfromの署名ucontext.hは次のとおりです。

void makecontext(ucontext_t *ucp, void (*func)(),
       int argc, ...);

func引数として空の括弧を使用していることに注意してください。ただし、これは標準Cでは非推奨の機能です。

C11(ISO / IEC 9899:201x)§6.11.6関数宣言子

空の括弧付きの関数宣言子(プロトタイプ形式のパラメーター型宣言子ではない)の使用は、廃止された機能です。

これが非推奨になった理由です(そしてどういうわけか残念です)。

于 2013-12-26T03:49:17.547 に答える