_THROW

stdio.h 当中void perror (const char **__s*); ,其中出现 _THROW 相关的东西,查询对应的定义:

# define __THROW	**attribute** ((**nothrow** __LEAF))

简单来说,就是为了让C++兼容C语言,对应C++中的 throw抛出异常,对于单纯的C语言没有什么影响。

描述nothrow属性的作用:

gcc - what is attribute nothrow used for?