scanf与printf转换说明符区别

来源:互联网 发布:微信数据库崩溃 修复 编辑:程序博客网 时间:2024/05/29 13:19

【问题描述】 scanf函数与printf函数的转换说明符几乎一致,都可以使用%c,%d,%e,%f,%g,%a,%p,%o等。那么他们的转换说明符有何区别?

【解析】

printf函数中将%f,%e,%E,%g,%G同时用于float类型和double类型,而scanf只把它们用于float类型,而用于double类型时要求使用l修饰符,即使用类似于%le的转换说明符。这就意味着,如果将printf函数的格式代码照搬于scanf函数,当输入为double类型时,若没有l修饰符修饰,则会出现精度截短的现象。

 

 

 

 

 

 

 

 

 

 

原创粉丝点击