在c ++中,有任何函数可以连接我可以编写的int或一小段代码来实现这一点。到目前为止我发现的所有东西似乎都不太复杂。我只是想知道,因为使用字符串你只需将两个字符串加在一起,所以任何整数等于。
答案 0 :(得分:2)
#include <string>
std::string s("helloworld:") + std::to_string(3);
输出:helloworld:3
或者你可以使用stringstream来实现你想要的东西
#include <sstream>
std::string s("helloworld:");
std::stringstream ss;
ss << 3;
s += ss.str();
输出:helloworld:3
答案 1 :(得分:1)
我不知道你想要实现什么
是这样的吗?
#define WEIRDCONCAT(a,b) a##b
int main()
{
cout<<WEIRDCONCAT(1,6);
}
或者可能是这样:
int no_of_digits(int number){
int digits = 0;
while (number != 0) { number /= 10; digits++; }
return digits;
}
int concat_ints (int n, ...)
{
int i;
int val,result=0;
va_list vl;
va_start(vl,n);
for (i=0;i<n;i++)
{
val=va_arg(vl,int);
result=(result*pow(10,no_of_digits(val)))+val;
}
va_end(vl);
return result;
}
int val=concat_ints (3, //No of intergers
62,712,821); //Example Outputs: 62712821
答案 2 :(得分:0)
我能想到的最快的方式:
#include <string>
string constr = to_string(integer1) + to_string(integer2);
int concatenated = stoi(constr);