Linuxプログラミングat LINUX
Linuxプログラミング - 暇つぶし2ch650:login:Penguin
08/03/05 21:11:41 DSOAwXvG
(引数+環境変数)の長さはARG_MAXで制限されると見たのですが、実験してみると
ARG_MAXをはるかに超えて環境変数を保存できるようです。
これはそういう仕様と理解していいのでしょうか?ポインタでも示していただけると幸いです。
Linux ru 2.6.22-14-generic #1 SMP Tue Feb 12 07:42:25 UTC 2008 i686 GNU/Linux

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>

int main(int argc, char *argv[])
{
char* str;
int i;
int size = 10000*1024;

str = malloc(size);

fprintf(stderr, "ARG_MAX=%d\n", sysconf(_SC_ARG_MAX));

memset(str, 'a', size);
memcpy(str, "hoge=", 5);
putenv(str);

printf("%s", getenv("hoge"));

free(str);
return 0;
}


次ページ
続きを表示
1を表示
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch