【发布时间】:2016-05-26 10:41:07
【问题描述】:
我正在使用 C(++) 程序,该程序需要从文件中读取值。这些值可以是整数(有符号或无符号)或浮点数。目前该文件仅包含十进制数字(整数),因为 sscanf() 格式说明符 %d 似乎就足够了。
但是,将来文件可能包含各种数字,例如正数或负数(整数或浮点数),在后一种情况下,精度未知,包括前导零或尾随零的存在,如下所示例子:
1
+2
-34
12.5
-13.5
+00014.31000000
是否有可以涵盖所有这些情况的格式说明符,还是我在做梦?
谢谢
【问题讨论】:
-
你在做梦......使用
fgets()。 -
连同值一起提供值的类型,或者先检查浮动格式,如果失败,检查整数。
-
对于 c++ 你可以使用
cin << -
这个魔术说明符会将其结果存储在什么数据类型的变量中?
-
只需使用浮点类型的浮点说明符即可。毕竟浮点类型可以保存整数。
标签: c scanf format-specifiers