将数字字符串转换为最小可能的数字类型(int,long,double,...)

时间:2014-10-03 08:29:47

标签: c string parsing numbers

我需要转换从stdin读取的字符串,并将字符串转换为尽可能小的数字数据类型。

例如:
25325将被注册为简称 458685864532将被阅读很长时间 54515,52将被注册为浮动 48559,486236596为双倍。

我不想将值读入最大可能的数据类型,然后进行一些数学计算以获得所需的位大小,然后将其转换为最小的。我正在考虑通过字符串中的每个字符串来决定要做什么。

例如,一个字符串为10个字符长,第一个数字为3且没有减号,它将自动使用unsigned int,因为它大于signed int且小于long。 (在这个例子中,我省略了特定编译器的限制。)

0 个答案:

没有答案