当前位置:  开发笔记 > 编程语言 > 正文

从文件中读取64位整数字符串

如何解决《从文件中读取64位整数字符串》经验,为你挑选了1个好方法。

我们有一个64位整数作为字符串的文件.我们如何scanf()或以其他方式将此数字字符串解析为C++中的无符号64位整数类型?

我们知道像%lld等的东西,但是很多方法做这个解析似乎打破了不同编译器和stdlibs下的编译.代码应该在gcc和Microsoft C++编译器下编译(当然完全符合标准是一个加号)



1> KTC..:

GCC很长,C++ 0x的编译器也是如此.MSVC++(尚未),但确实有你可以使用的__int64.

#if (__cplusplus > 199711L) || defined(__GNUG__)
    typedef unsigned long long uint_64_t;
#elif defined(_MSC_VER) || defined(__BORLANDC__) 
    typedef unsigned __int64 uint_64_t;
#else
#error "Please define uint_64_t"
#endif

uint_64_t foo;

std::fstream fstm( "file.txt" );
fstm >> foo;

推荐阅读
路人甲
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有