我问用户他想知道哪个环境变量,然后我用 scanf 扫描它。但这对我不起作用。这是我的代码:
#include <unistd.h>
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[]){
char *value;
char input;
printf("Which variable do you want?\n");
scanf("%s", input);
value = getenv(input);
printf("%s", value);
}
编译器说:
“不允许在类型“const char*”和“char”之间分配函数参数”
所以我尝试将输入变量更改为:char const *input
现在没有编译器错误,但是当我提交一个名称时,例如“USER”,我得到一个"Segmentation fault (core dumped)"
错误。