【发布时间】:2011-10-31 14:23:57
【问题描述】:
我尝试使用此函数将字符串转换为 _int64,但它不起作用:
_int64 lKey = _atoi64("a1234");
lKey 值始终为零并且不起作用,除非字符串只是像“1234”这样的数字
我使用 C++ 字符串流读取解决方案,但我想用纯 C 编写我的应用程序
【问题讨论】:
-
您希望函数对该输入执行什么操作? atoi 只使用字符串前面的数字,因此任何不以数字开头(前导空格之后)的字符串都会产生 0。
strtoll可能对您更有用。 -
带下划线的标识符通常暗示内部使用。如果您想使用 64 位整数,则不能使用 ansi C,因此您可能希望选择 C99 并使用 strtoll。
-
好的,我知道它工作正常。但是如何将 char 数组转换为 _int64 类型??