我正在尝试编写一个名为error的函数,其行为类似于printf,但仅支持%s,%c和%d说明符.但是,如果%后面没有合法字符,我无法理解printf的行为.我也尝试循环使用c99标准手册但找不到任何东西.有人可以帮帮我吗?
C99在§7.19.6.1/ 9(for fprintf)中有此:
如果转换规范无效,则行为未定义.
因此,格式错误的格式字符串会导致未定义的行为.
如果格式字符串格式良好但参数实际上与类型不匹配,则相同:
如果任何参数不是相应转换规范的正确类型,则行为未定义.
| 归档时间: |
|
| 查看次数: |
126 次 |
| 最近记录: |