Ant*_*rez 5 c++ 64-bit gcc unsigned-long-long-int visual-studio
我正在处理unsigned long long从字符串中读取64位无符号整数的问题.我的代码应该适用于GCC 4.3和Visual Studio 2010.
我读了这个问题并回答了这个主题:从文件中读取64位整数字符串,这样strtoull可以使工作比使用a更好,更有效std::stringstream.很遗憾strtoull在Visual Studio中不可用stdlib.h.
所以我写了一个简短的模板函数:
template <typename T>
T ToNumber(const std::string& Str)
{
T Number;
std::stringstream S(Str);
S >> Number;
return Number;
}
unsigned long long N = ToNumber<unsigned long long>("1234567890123456789");
Run Code Online (Sandbox Code Playgroud)
我担心这个解决方案的效率,所以在这个方案中有更好的选择吗?
“它被称为_strtoui64(),_ wcstoui64()和_tcstoui64()。还有用于自定义语言环境的_l版本。HansPassant
。”
顺便说一句,使用Google之类的方法是要注意Google会自动认为您错了(就像Visual Studio的较新版本一样),而是搜索其他内容,因此请确保单击链接以搜索内容您告诉它要搜索。
干杯,……
| 归档时间: |
|
| 查看次数: |
4913 次 |
| 最近记录: |