LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1200|回复: 1

extern int printf (__const char *__restrict __format, ...) __THROW;

[复制链接]
发表于 2006-10-21 11:49:41 | 显示全部楼层 |阅读模式
问个问题:
在/usr/include中的包含文件中经常会看到诸如
extern int printf (__const char *__restrict __format, ...) __THROW;
的函数原型声明,这里__THROW是什么意思,原型声明的后面会出现一个宏定义名
这种声明方法在C语言标准定义中存在否?有没有语法上面错误
我对整个/usr/include中的所有文件内容进行了查找,发现找不到对__THROW的宏定义
发表于 2006-10-21 12:40:19 | 显示全部楼层
语法没有错误,宏只不过是替换成别的东西罢了。宏展开后符合语法即可。
我使用gcc 4.1.1,这是我找到的有关 __THROW 的定义:
  1. // /usr/include/argp.h
  2. #ifndef __THROW
  3. # define __THROW
  4. #endif
复制代码
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表