如何将3个int连接成unsigned long long?

时间:2012-06-25 10:50:21

标签: c++ formatting c++11

说,我们得到int A 333; int B 4444int C 5454我们希望将它们连接成一个unsigned long long 000333 004444 005454 00(格式为0/1 int sign,int) 。如何在C ++中进行这样的格式化,是否有可以简化处理的C ++ 11工具?

2 个答案:

答案 0 :(得分:2)

您可以使用std::to_string从整数创建字符串,根据需要进行连接,然后使用std::stoll转换为long long。

答案 1 :(得分:2)

你的意思是这个吗?

unsigned int A = 333;
unsigned int B = 4444;
unsigned int C = 5454;

unsigned long long r = A*100000000000000ULL + B*100000000ULL + C*100ULL;

证明它有效:http://ideone.com/XWFdU