如何在 C++/CLR 中连接数字
How to concatenate numbers in c++/CLR
我有一个变量num1
。
现在我想将一个数字连接到 num1
示例 -> num1 += 5;
它没有像预期的那样连接,而是将 num1
设置为 0。num2
也是如此
这是我的代码部分,应该将 num1
或 num2
设置为 5:
private: System::Void button14_Click(System::Object^ sender, System::EventArgs^ e) {
if (label1->Text == "Operator")
{
if (label3->Text == "Result")
label3->Text = gcnew String("5");
else
label3->Text += gcnew String("5");
to_string(num1) += "5";
}
else if (label1->Text != "Operator")
{
label3->Text += gcnew String("5");
to_string(num2) += "5";
}
}
这是 =
按钮
private: System::Void button23_Click(System::Object^ sender, System::EventArgs^ e) {
if (label1->Text != "Operator")
{
if (label1->Text == "+")
{
result = num1 + num2;
label3->Text = gcnew String(to_string(result).data());
}
else if (label1->Text == "-")
{
result = num1 - num2;
label3->Text = gcnew String(to_string(result).data());
}
else if (label1->Text == "x")
{
result = num1 * num2;
label3->Text = gcnew String(to_string(result).data());
}
else if (label1->Text == "÷")
{
float(result) = num1 / num2;
label3->Text = gcnew String(to_string(result).data());
}
else if (label1->Text == "%")
{
float(result) = num1 / num2 * 100;
label3->Text = gcnew String(to_string(result).data());
}
else if (label1->Text == "Power")
{
result = pow(num1, num2);
label3->Text = gcnew String(to_string(result).data());
}
else if (label1->Text == "Square Root")
{
result = sqrt(num1);
label3->Text = gcnew String(to_string(result).data());
}
else if (label1->Text == "Cube Root")
{
result = cbrt(num1);
label3->Text = gcnew String(to_string(result).data());
}
}
else
{
label1->Text = "Please make sure you complete the equation(put 0 as";
label3->Text = "2nd number for root)";
}
}
num1 += 6
与 num1 = num1 + 6
相同,因此,如果 num1
为 5,则与 num1 = 5 + 6
相同,您可能知道,5 + 6是 11.
to_string(num1) += "5";
对num
没有影响;它创建一个字符串,对其进行修改,然后将其丢弃。
您需要使用古代数学之力:num = num * 10 + 5;
我有一个变量num1
。
现在我想将一个数字连接到 num1
示例 -> num1 += 5;
它没有像预期的那样连接,而是将 num1
设置为 0。num2
这是我的代码部分,应该将 num1
或 num2
设置为 5:
private: System::Void button14_Click(System::Object^ sender, System::EventArgs^ e) {
if (label1->Text == "Operator")
{
if (label3->Text == "Result")
label3->Text = gcnew String("5");
else
label3->Text += gcnew String("5");
to_string(num1) += "5";
}
else if (label1->Text != "Operator")
{
label3->Text += gcnew String("5");
to_string(num2) += "5";
}
}
这是 =
按钮
private: System::Void button23_Click(System::Object^ sender, System::EventArgs^ e) {
if (label1->Text != "Operator")
{
if (label1->Text == "+")
{
result = num1 + num2;
label3->Text = gcnew String(to_string(result).data());
}
else if (label1->Text == "-")
{
result = num1 - num2;
label3->Text = gcnew String(to_string(result).data());
}
else if (label1->Text == "x")
{
result = num1 * num2;
label3->Text = gcnew String(to_string(result).data());
}
else if (label1->Text == "÷")
{
float(result) = num1 / num2;
label3->Text = gcnew String(to_string(result).data());
}
else if (label1->Text == "%")
{
float(result) = num1 / num2 * 100;
label3->Text = gcnew String(to_string(result).data());
}
else if (label1->Text == "Power")
{
result = pow(num1, num2);
label3->Text = gcnew String(to_string(result).data());
}
else if (label1->Text == "Square Root")
{
result = sqrt(num1);
label3->Text = gcnew String(to_string(result).data());
}
else if (label1->Text == "Cube Root")
{
result = cbrt(num1);
label3->Text = gcnew String(to_string(result).data());
}
}
else
{
label1->Text = "Please make sure you complete the equation(put 0 as";
label3->Text = "2nd number for root)";
}
}
num1 += 6
与 num1 = num1 + 6
相同,因此,如果 num1
为 5,则与 num1 = 5 + 6
相同,您可能知道,5 + 6是 11.
to_string(num1) += "5";
对num
没有影响;它创建一个字符串,对其进行修改,然后将其丢弃。
您需要使用古代数学之力:num = num * 10 + 5;