gpt4 book ai didi

c - 根据 PID 杀死一个进程

转载 作者:行者123 更新时间:2023-11-30 14:46:38 25 4
gpt4 key购买 nike

我以前从未用 C 编程,但我需要一个 C 程序来杀死给定 PID 的进程。我知道这个问题被很多人问到,但我遇到了一个我不明白的编译错误。这是用我在互联网上找到的东西构建的代码:

#include<stdio.h>
#include<signal.h>

int main (int argc, char *argv[]){

if (argc != 2 ) return 1;

int pid = atoi (argv[1]);
kill (pid, SIGINT);

return 0;
}

和日志:

-------------- Build: Debug in processKiller (compiler: GNU GCC Compiler)---------------

mingw32-gcc.exe -Wall -g -c "D:\.Ce PC\Desktop\ws processKiller\processKiller\main.c" -o obj\Debug\main.o
D:\.Ce PC\Desktop\ws processKiller\processKiller\main.c: In function 'main':
D:\.Ce PC\Desktop\ws processKiller\processKiller\main.c:8:5: warning: implicit declaration of function 'atoi' [-Wimplicit-function-declaration]
int pid = atoi (argv[1]);
^
D:\.Ce PC\Desktop\ws processKiller\processKiller\main.c:9:5: warning: implicit declaration of function 'kill' [-Wimplicit-function-declaration]
kill (pid, SIGINT);
^
mingw32-g++.exe -o bin\Debug\processKiller.exe obj\Debug\main.o
obj\Debug\main.o: In function `main':
D:/.Ce PC/Desktop/ws processKiller/processKiller/main.c:9: undefined reference to `kill'
collect2.exe: error: ld returned 1 exit status
Process terminated with status 1 (0 minute(s), 0 second(s))
2 error(s), 2 warning(s) (0 minute(s), 0 second(s))

谢谢。

最佳答案

kill 是一个 POSIX 函数。由于您使用的是 Windows,因此您需要了解如何使用 WINAPI 终止进程。这有点复杂,但这应该可以帮助您入门:How to effectively kill a process in C++ (Win32)?

关于c - 根据 PID 杀死一个进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52084779/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com