标签: integer

c ++ integer-> std :: string转换.功能简单?

问题:我有一个整数; 这个整数需要转换为stl :: string类型.

在过去,我曾经stringstream做过转换,这有点麻烦.我知道C方式是做一个sprintf,但我宁愿做一个类型安全(呃)的C++方法.

有一个更好的方法吗?

这是我过去使用的字符串流方法:

std::string intToString(int i)
{
    std::stringstream ss;
    std::string s;
    ss << i;
    s = ss.str();

    return s;
}
Run Code Online (Sandbox Code Playgroud)

当然,这可以改写如下:

template<class T>
std::string t_to_string(T i)
{
    std::stringstream ss;
    std::string s;
    ss << i;
    s = ss.str();

    return s;
}
Run Code Online (Sandbox Code Playgroud)

但是,我认为这是一个相当"重量级"的实施.

Zan指出,调用非常好,但是:

std::string s = t_to_string(my_integer);
Run Code Online (Sandbox Code Playgroud)

无论如何,一个更好的方式将是......很好.

有关:

用于将整数转换为字符串C++的itoa()的替代方案?

c++ integer stdstring

76
推荐指数
3
解决办法
11万
查看次数

为何使用!! 将int转换为bool时?

以这种方式将整数转换为布尔值的原因是什么?

bool booleanValue = !!integerValue;
Run Code Online (Sandbox Code Playgroud)

而不仅仅是

bool booleanValue = integerValue;
Run Code Online (Sandbox Code Playgroud)

我所知道的是,在VC++ 7中,后者将导致C4800警告而前者不会.这两者之间还有其他区别吗?

c++ integer boolean

76
推荐指数
6
解决办法
5万
查看次数

600851475143的"整数过大"错误消息

public class Three {
    public static void main(String[] args) {
        Three obj = new Three();
        obj.function(600851475143);
    }

    private Long function(long  i) {
        Stack<Long> stack = new Stack<Long>();

        for (long j = 2; j <= i; j++) {
            if (i % j == 0) {
                stack.push(j);
            }
        }
        return stack.pop();
    }
}
Run Code Online (Sandbox Code Playgroud)

运行上面的代码时,它会在行上产生错误obj.function(600851475143);.为什么?

java integer

76
推荐指数
6
解决办法
12万
查看次数

我应该在C#中使用uint来获取不能为负的值吗?

我刚才想实现一类其中有大量的长/计数性能等方面都uint代替int.然而,在这样做的同时,我注意到这样做真的很痛苦,就好像没有人真的想要那样做.

几乎所有提出整数类型的东西都会返回int,因此需要在几个点上进行转换.我想构建一个StringBuffer缓冲区长度默认为该类中的一个字段.也需要演员.

所以我想知道我是否应该回到int这里.无论如何,我当然不会使用整个范围.我只是想,因为我在那里处理的根本不能是负面的(如果它是,这是一个错误)实际使用它是一个好主意uint.

PS:我看到了这个问题,这至少解释了为什么框架本身总是使用,int但即使在自己的代码中,它实际上很难坚持,uint这让我觉得它显然不是真正想要的.

c# integer

75
推荐指数
2
解决办法
1万
查看次数

递增整数的int值?

如何在Java中增加Integer的值?我知道我可以用intValue获取值,我可以用新的Integer(int i)设置它.

playerID.intValue()++;
Run Code Online (Sandbox Code Playgroud)

似乎不起作用.

注意:PlayerID是一个用以下内容创建的Integer:

Integer playerID = new Integer(1);
Run Code Online (Sandbox Code Playgroud)

java int integer class

75
推荐指数
7
解决办法
18万
查看次数

如何在Java中将整数转换为float?

我有两个整数xy.我需要计算x/y,结果我想浮动.例如,作为3/2我希望有1.5的结果.我认为,最简单的(或唯一的)的方式来做到这一点是转换xy成float类型.不幸的是,我找不到一个简单的方法来做到这一点.你能帮帮我吗?

java floating-point integer

75
推荐指数
4
解决办法
27万
查看次数

将整数转换为十六进制,将十六进制转换

所以我signal_data在Sybase中有这个查询工作(哪一个是列)但它在Microsoft SQL Server中不起作用:

HEXTOINT(SUBSTRING((INTTOHEX(signal_data)),5,2)) as Signal
Run Code Online (Sandbox Code Playgroud)

我也在Excel(A1包含值)中有它:

=HEX2DEC(LEFT(DEC2HEX(A1),LEN(DEC2HEX(A1))-2))
Run Code Online (Sandbox Code Playgroud)

有谁知道如何在SQL Server中执行此操作?

sql sql-server hex integer

73
推荐指数
7
解决办法
23万
查看次数

在Python中从二进制文件中读取整数

我正在尝试用Python 读取BMP文件.我知道前两个字节表示BMP公司.接下来的4个字节是文件大小.当我执行:

fin = open("hi.bmp", "rb")
firm = fin.read(2)  
file_size = int(fin.read(4))  
Run Code Online (Sandbox Code Playgroud)

我明白了:

ValueError:int()的基数为10的无效文字:'F#\ x13'

我想要做的是将这四个字节作为整数读取,但似乎Python将它们作为字符读取并返回一个字符串,该字符串无法转换为整数.我该怎么做才能正确?

python binary integer file

73
推荐指数
4
解决办法
12万
查看次数

如果我为无符号变量赋值为负值会怎样?

我很想知道如果我给无符号变量赋一个负值会发生什么.

代码看起来有点像这样.

unsigned int nVal = 0;
nVal = -5;
Run Code Online (Sandbox Code Playgroud)

它没有给我任何编译器错误.当我运行程序时,nVal分配了一个奇怪的值!是否可以将某个2的补码值分配给nVal

c++ unsigned signed integer type-conversion

73
推荐指数
3
解决办法
8万
查看次数

Python整数范围

在Python中,有没有办法获得可以使用的最大整数?是否有像INT_MAX这样的预定义常量?

python integer

72
推荐指数
1
解决办法
6万
查看次数