2

sbrk の機能には影響がないようですが、sbrk() のドキュメントでは intptr_t パラメータが必要であると書かれています。

int型をパラメーターとして渡すと機能します(または少なくとも機能するようです)。

これは通常の C です。

4

2 に答える 2

6

intptr_tアーキテクチャによってサイズが異なります。intアーキテクチャに応じてサイズが変わる場合と変わらない場合がありintptr_tます。int

于 2011-03-20T23:15:19.903 に答える
1

正しいヘッダーが含まれている限り、inttoを渡していませんsbrk()。渡す値はintptr_t、C プロモーション ルールに従って変換されます。これらのルールは非常に微妙なので、少なくともそれらが存在することを知って、まれなケースでそれらを呼び出さないようにする必要があります。

結果として、のプロトタイプを提供するヘッダーが含まれている限り、プラットフォーム上とは異なっていても、sbrkのように見えるものを渡したときに、クラッシュなどの何か目を見張るものを期待しないでください。intintptr_tintsbrk()

于 2011-03-20T23:23:06.667 に答える