2011-11-12 3 views
2

私はC標準ライブラリのputenv()機能と同様の機能を作成する上でいくつかの助けが必要ですが、代わりの:にputenvと同様の機能()

void env_add(char varname[], char varvalue[]); 
:それは次のようにプロトタイプ宣言されて

int putenv(char *string); 

ここで、varname[]varvalue[]は、ユーザーによって入力され、char型です。

void env_add(char varname[], char varvalue[]) 
{ 
    char* argument = ...; 

    /* ...do something to create an argument out of name and value... */ 

    putenv(argument); 
}; 

答えて

1

あなたがそれらを保持するのに十分な長さを動的文字列、等号とヌルターミネータを割り当て、構築、varnamevarvalue(例えばstrlenと)の長さを測定する必要があります非常に難しいことではありません

0

varname=varvalue文字列(例えば、snprintfまたはstrncatで、またはマゾヒストタイプの場合は2つのforループで行うことができます)、新しい文字列をputenvに渡して、作成した文字列の割り当てを解除します。

ちなみに、あなたの実際の機能を変更していないので、varnamevarvalueconst char *に変更します。

関連する問題