0
我有这个函数,我试图从路径中删除给定变量的值。问题是,我不知道如何在每次用分号分隔删除最后一个字符串后将环境变量设置为新值。从环境中删除给定变量的值C
例如,如果我的变量是:
WEATHER =热;冷干
成为
WEATHER =热;冷
int remove(char name_Remove[]){
char *value_toRemove = getenv(name_Remove);
char *pos = strrchr(value_toRemove, ';');
if(pos) {
*pos = 0;
return pos-name_Remove;
}
return 0;
}
此外,我已经有一个功能如果这有助于以下形式,则将变量和值添加到环境中:
void add(char name[], char value[]) {
}
我只是想改变子进程的环境变量值,你可以告诉我如何做到这一点? – Reyko
在这种情况下,使用我展示的setenv调用,链接页面应该给你一个关于如何使用它的体面概念。 – slugonamission