6
A
答えて
17
#include <unistd.h>
#include <stdio.h>
extern char **environ;
//...
int i = 0;
while(environ[i]) {
printf("%s\n", environ[i++]); // prints in form of "variable=value"
}
2
は、あなたは私が必要な正確に何
int main(int argc, char **argv, char **envp)
{
while(*envp!=null) {
printf("%s\n", *envp);
envp++;
}
return 0;
}
+4
いいえ、 'extern char ** environ;'はPOSIX標準です。 'main'のこの署名は完全に非標準です。 –
+0
あなたは完全に正しいです。しかしながら。それが私が尋ねた理由です。 HPUX 10i、11.0、および11iのccの下で、Solaris 9および10のgccで正しくコンパイルされて実行されます。 DEC UnixとDGUXの旧バージョンでもコンパイルして実行しました。要点は、** environと古いint main(int、char **、char *)を混乱させるということです。私は検証するために私のK&Rを持っていない、または私はそこにそれを主張するだろう。あなたのK&Rは何を言いますか? –
関連する問題
- 1. 環境変数を使用したLogstash条件付き出力
- 2. 環境変数perlを使用して
- 3. Jenkins出力としてヌル値を与える環境変数
- 4. 環境変数としてpowershell変数を使用する
- 5. 使用して環境変数
- 6. logstash:入力ホストで環境変数を使用する方法
- 7. 環境変数を使用したバッファオーバーフロー
- 8. pythonの色を含む環境変数を出力します
- 9. ホスト環境変数を使用してドッカーを作成する
- 10. スクリプトを使用して環境変数をエクスポートする
- 11. 2行の出力から環境変数を設定する
- 12. MSBuild .targetsファイルから環境変数を出力する
- 13. JenkinsのNode.jsを環境変数として使用する
- 14. 環境変数を使用してPythonでサブプロセスを呼び出す
- 15. springboot環境変数でapplication.propertiesを使用してテストします
- 16. ビルドパラメータを使用して環境変数をパイプラインノードに渡す
- 17. 糸package.jsonの環境変数を使用
- 18. CircleCIの環境変数を使用
- 19. Logstash:環境変数を使用
- 20. React:環境変数を使用
- 21. 環境変数を光源とする環境変数
- 22. nmake:環境変数を使用してデフォルト値に戻す
- 23. Cコードを使用して環境変数を取得
- 24. Rails、Mongoid、データベース環境設定の環境変数を使用するNoMethodError
- 25. 環境変数は、別の環境変数を参照しています
- 26. 環境変数を使用してWindowsパスをパスに変換する
- 27. 環境のバッチファイルを使用して変数とC++
- 28. 変数値をGoCDの環境パラメータとして使用
- 29. 環境変数を使用していないNewman
- 30. set/p環境変数を使用していません
を意味していますか?だからenvironは実際には文字のポインタの配列ですね。配列内の各文字ポインタは、環境変数right?を指します。 –
各ポインタは、 "variable = value"の形式の文字列(ええ、char配列)を指しています。最後のエントリはヌルポインタで、上のループを終了します。 – sje397
ありがとうございます:)あなたはとても有益なコメントでした。 –