Fedora Core 7では、私はARG_MAX
に依存するコードを書いています。ただし、I #include <limits.h>
であっても、定数はまだ定義されていません。私の調査では、それが<sys/linux/limits.h>
に存在することが示されていますが、これはWin32/Mac/Linuxで移植可能であると考えられています。何が起きてる?limits.hでARG_MAXが定義されていないのはなぜですか?
7
A
答えて
8
limits.hにない理由は、現在のアーキテクチャのビット幅に基づいて整数型の値の範囲の制限を与える量ではないということです。これはISO標準によってlimits.hに割り当てられた役割です。
あなたが興味を持っている値は実際にはハードウェアではなく、プラットフォームによって異なる場合があります。システムビルドからシステムビルドまで多岐にわたります。
正しいことは、sysconf
に電話し、 "ARG_MAX"または "_POSIX_ARG_MAX"を求めることです。とにかく私はだと思う。これはPOSIX準拠のソリューションだ。
Acc。私のドキュメントには、あなたが要求している値に基づいてunistd.hまたはlimits.hのいずれかまたは両方が含まれています。
他の1点:関数のexecファミリの多くの実装では、特大の環境でそれらを呼び出そうとすると、E2BIGまたは同様の値が返されます。これはexecが実際に返すことができる定義済みの条件の1つです。
-2
ARG_MAXは/usr/include/linux/limits.hで定義されています。私のLinuxカーネルのバージョンは3.2.0-38です。
関連する問題
- 1. はなぜ定義されていないのですか?
- 2. ライブサーバでmysqli_fetch_all()が定義されていないのはなぜですか?
- 3. ControlItemでSubItemsが定義されていないのはなぜですか?
- 4. アプリケーションで「url_for」が定義されていないのはなぜですか?
- 5. ReactJSコードでthis.propsが定義されていないのはなぜですか?
- 6. PageMethodsオブジェクトが定義されていないのはなぜですか?
- 7. 関数名が定義されていないのはなぜですか?
- 8. JavaScript関数 "a"が定義されていないのはなぜですか?
- 9. "total"変数が定義されていないのはなぜですか?
- 10. ReactReduxが定義されていないのはなぜですか?
- 11. ブール値が定義されていないのはなぜですか?
- 12. chrome.browserAction.onClickedが定義されていないのはなぜですか?
- 13. Lazy_high_chart:options.xaxが定義されていないのはなぜですか?
- 14. jQueryが定義されていないというエラーが表示されるのはなぜですか?
- 15. ObjectでequalsとhashCodeが定義されているのはなぜですか?
- 16. contentPlaceHolderで定義されているスクリプトタグが追加されないのはなぜですか?
- 17. 致命的なエラー:定義されていない関数 - なぜですか?
- 18. 継承を使用して、私のテストクラスでgoPee()が定義されていないのはなぜですか?
- 19. なぜテンプレートが再定義されないのですか?それはすべてヘッダファイルに書かれているのはなぜですか?
- 20. FFはなぜwindow.eventが定義されていないと言っているのですか?
- 21. ASP.NETで動的HTML選択のフォーム変数が定義されていないのはなぜですか?
- 22. foo.x = foo = {n:2}でfoo.xの値が定義されていないのはなぜですか?
- 23. main()関数がif '__main__'の内部で定義されていないのはなぜですか?
- 24. C/C++で式の評価順序が定義されていないのはなぜですか?
- 25. なぜassertは(void)0と定義されていますか?
- 26. mvc httppostが定義されていると、jqueryのロードが機能しないのはなぜですか?
- 27. 反応コンポーネントでcontext.routerが定義されていないのはなぜですか?
- 28. "辞書"と "キー"がPythonで定義されていないのはなぜですか?
- 29. "$が定義されていません"というエラーが表示されるのはなぜですか?
- 30. 「ブロックが定義されていません」というエラーが表示されるのはなぜですか?