【发布时间】:2015-06-20 00:05:16
【问题描述】:
我看过的一个司机有
static void __devexit rtsx_remove(struct pci_dev *pci)
__devexit 在函数定义的上下文中是什么意思?我见过的其他函数最多有static 和一个返回类型。
【问题讨论】:
-
你为什么不右击那个
__devexit符号,去它的定义看看它到底是什么意思???它很可能只是一个注释,用于通过外部工具生成预定义的警告,该工具检查编码正确性或类似的东西。 -
这是 Unix 内核中的一些宏:cs.fsu.edu/~baker/devices/lxr/http/source/linux/include/linux/…
-
请注意,您可以有一个函数,例如
static inline int max(int x, int y) { return (x > y) ? x : y; },它会在其中添加一个inline。你可以有一个内联函数,它返回一个指向(常量)易失数据的常量指针,以及各种其他东西。你可以有一个static void _Noreturn inline exit_noisily(void) { fprintf(stderr, "Exiting\n"); exit(EXIT_FAILURE); }等。Microsoft 使用和/或使用各种限定符,例如far、near、cdecl、dllimport、dllexport等(可能带有下划线)。您的__devexit是另一个这样的限定词。 -
@barakmanos 我没有使用 IDE