在 linux 中打开文件时遇到问题
Trouble opening a file in linux
我正在尝试在 linux 系统上打印 运行 进程,但是在尝试这样做时出现分段错误。这是我的代码:
FILE *ps;
char line[256];
char * command = "ps";
ps = fopen(command, "r");
if(ps == NULL){
perror("Error");
}
while(fgets(line, sizeof(line), ps)){
printf("%s", line);
}
fclose(ps);
奇怪的是,当我使用相同的代码但将 "ps" 替换为“/proc/meminfo”或其他文件时,它会正确输出。在此先感谢您的帮助。
尝试对 运行 命令使用 popen 和 pclose 而不是 fopen 和 fclose
char line[256];
FILE *ps = popen("ps", "r");
if(ps == NULL){
perror("Error");
}
while(fgets(line, sizeof(line), ps)){
printf("%s", line);
}
pclose(ps);
我正在尝试在 linux 系统上打印 运行 进程,但是在尝试这样做时出现分段错误。这是我的代码:
FILE *ps;
char line[256];
char * command = "ps";
ps = fopen(command, "r");
if(ps == NULL){
perror("Error");
}
while(fgets(line, sizeof(line), ps)){
printf("%s", line);
}
fclose(ps);
奇怪的是,当我使用相同的代码但将 "ps" 替换为“/proc/meminfo”或其他文件时,它会正确输出。在此先感谢您的帮助。
尝试对 运行 命令使用 popen 和 pclose 而不是 fopen 和 fclose
char line[256];
FILE *ps = popen("ps", "r");
if(ps == NULL){
perror("Error");
}
while(fgets(line, sizeof(line), ps)){
printf("%s", line);
}
pclose(ps);