gpt4 book ai didi

有人可以向我解释 'sigaction' 是如何工作的吗?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:31:34 27 4
gpt4 key购买 nike

我很难理解 sigaction() 的方式有效。

<signal.h> , sigaction 定义为

int sigaction(int sig, const struct sigaction *act, struct sigaction *oact)

但是sigaction也在 bits/sigaction.h 中定义作为一个结构。我在这里很困惑,C 中的结构是否可以调用?

有人可以给我一个简短的解释吗?

最佳答案

函数称为sigaction,结构称为struct sigaction。函数和结构存在于 C 中的不同命名空间中。这类似于您可以这样做的方式:

#include <stdio.h>

struct x {
int x;
};

static int
x(struct x *x) {
return x->x;
}

int
main(void) {
struct x y;
/* But not "struct x x" as we want to call the "x" function below. */

y.x = 1;
printf("%d\n", x(&y));
return 0;
}

并且编译器可以通过各种命名空间来区分哪个x是哪个。但是这个例子有点过分了,如果你在现实生活中这样做的话,你会被人看不起的。

关于有人可以向我解释 'sigaction' 是如何工作的吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5827825/

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