各种类型的所有(整数)常量的列表

Tyi*_*ilo 5 debugging constants

是否存在某种服务,我可以输入系统"枚举类型"(或类似)并获取所有可能值的列表?

使用gdb进行调试时遇到错误,快速获取错误名称会很好,而不必查看定义类型的头文件的相关头文件.

例如,kern_return_t定义OS X中的类型,/usr/include/mach/i386/kern_return.h其中基本上只包含一行内容(不包括):

typedef int     kern_return_t;
Run Code Online (Sandbox Code Playgroud)

有效值是定义的/usr/include/mach/kern_return.h,这是有道理的,但我永远不会记住这条路径,我想加快这个过程.

例:

输入: kern_return_t

输出:

0 | KERN_SUCCESS
1 | KERN_INVALID_ADDRESS
2 | KERN_PROTECTION_FAILURE
3 | KERN_NO_SPACE
4 | KERN_INVALID_ARGUMENT
5 | KERN_FAILURE
6 | KERN_RESOURCE_SHORTAGE
7 | KERN_NOT_RECEIVER
8 | KERN_NO_ACCESS
9 | KERN_MEMORY_FAILURE
...
Run Code Online (Sandbox Code Playgroud)

Col*_*ett 7

这就是open -h为此而生的。我建议将它与-s然而结合起来,像这样:

$ open -s iOS -h kern_return
kern_return?
[0] cancel
[1] all

[2] /usr/include/mach/i386/kern_return.h
[3] /usr/include/mach/kern_return.h
[4] /usr/include/mach/machine/kern_return.h
[5] /System/Library/Frameworks/Kernel.framework/Headers/mach/i386/kern_return.h
[6] /System/Library/Frameworks/Kernel.framework/Headers/mach/kern_return.h
[7] /System/Library/Frameworks/Kernel.framework/Headers/mach/machine/kern_return.h

Which header(s) for "kern_return"?
Run Code Online (Sandbox Code Playgroud)