0
我試圖在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);
奇怪的是,當我使用相同的代碼,但用「的/ proc/meminfo中」或其他文件替換「PS」,使其能正確輸出。先謝謝您的幫助。
好了,不'fopen'成功還是失敗?你爲什麼不測試? – usr2564301
你有一個名爲'ps'的文件嗎? – Joni
'ps'不是一個文件,它是一個命令。至少這是基於你想使用它的方式。 –