【发布时间】:2025-12-09 15:50:01
【问题描述】:
如何从信号编号中快速获取信号名称?
有strsignal(),但我只想要名字,例如SIGUSR1
换句话说,如果我们有像这样的宏
SIGUSR1 -> 12
我们有类似的东西吗
12 -> SIGUSR1?
【问题讨论】:
-
在我的
/usr/include/sys/signal.h中,所有的信号名称都只是#defined 常量。这意味着在编译器运行时,预处理器已经用常量整数替换了它们——就程序而言,符号名称不存在。你到底想在这里做什么? -
@CarlNorum,没什么特别的,只是花哨的输出。我认为实际名称可以存储在其他地方以便我可以得到它们。
-
如果你想要“花哨的输出”,那不正是
strsignal的用途吗? -
是的,它很漂亮,但不是我想要的方式:) 只是好奇,根本不是问题。
-
我的
strsignal手册页说您可以直接从sys_signame获取名称。