我查阅了如何将字符串转换为short,但大多数是关于如何将字符串转换为整数的。虽然我想在那些帖子下留言提问,但我没有足够的声望。我的目标是将一个字符串转换为一个short,因为这个数字永远不会超过三或低于零,并且使用short可以节省内存(据我所知)。
需要明确的是,这里不是指ASCII码。
另外一件事,我想要做的是检查将字符串转换为short是否失败,因为我将用到来自用户输入的字符串。
我知道可以使用while循环实现,但如果在C++中有内置函数来完成此操作,它与while循环同样或更加高效,我很乐意听取建议。
short s; std::istringstream strm("100"); strm >> s;
这个不行吗? - timraushort
和int
之间的性能差异可能很小。你应该从使用int
开始,只有在分析表明需要时才考虑其他类型。编程时,你应该首先考虑 你自己 的效率,真的值得花费时间去纠结那些几乎没有影响的问题吗? - user657267