双重下划线在C语言中的变量名称中意味着什么?

8 c linux kernel

可能重复:
为什么人们在C++中使用__(双下划线)这么多

我正在研究Linux内核编程代码.

有一些数据结构和函数以双下划线开头,如:

__u32  len
Run Code Online (Sandbox Code Playgroud)

这与正常变量有何不同?

Ben*_*igt 14

这意味着它是系统保留的名称.C标准规定所有以下划线或下划线和大写字母开头的名称都保留供系统或编译器使用,不应在应用程序代码中定义.