在两个for循环里怎么得到字符串的组合
在两个for循环里如何得到字符串的组合
------解决思路----------------------
CString 字符串可以直接相加:
bool first = true;
for(int i=3;i<=ROW;i++)
{
for(int h=30;h<=COL;h++)
{
if(MyExcel.GetCellString(i,h)=="r")
{
CString A;
A = MyExcel.GetCellString(1,h);
if(first) //第一个字符串前面不加逗号
{
Temp.receive_name_ +=A;
first = false;
}
else
Temp.receive_name_ += "," + A; //加逗号
}
}
}
------解决思路----------------------
------解决思路----------------------
------解决思路----------------------
应该不会啊,你在看看哪里错了,找不到就看看下面程序吧,
for(int i=3;i<=ROW;i++)在h循环里面得到的A会有若干个字符串(个数不确定)比方说h=31的时候A得到一个字符串MyExcel.GetCellString(1,31),h增加到34的时候又得到一个字符串MyExcel.GetCellString(1,34),我想这这若干个字符串以逗号相隔组合在一起,然后再传递给Temp.receive_name_,我这最后一行代码该如何修改,请大家指教
{
for(int h=30;h<=COL;h++)
{
if(MyExcel.GetCellString(i,h)=="r")
{
CString A;
A = MyExcel.GetCellString(1,h);
Temp.receive_name_ =A;
}
}
------解决思路----------------------
CString 字符串可以直接相加:
bool first = true;
for(int i=3;i<=ROW;i++)
{
for(int h=30;h<=COL;h++)
{
if(MyExcel.GetCellString(i,h)=="r")
{
CString A;
A = MyExcel.GetCellString(1,h);
if(first) //第一个字符串前面不加逗号
{
Temp.receive_name_ +=A;
first = false;
}
else
Temp.receive_name_ += "," + A; //加逗号
}
}
}
------解决思路----------------------
for(int i=3;i<=ROW;i++)
{
//此处添加Temp.receive_name_清空程序
Temp.receive_name_ = _T("");
bool first = true;
for(int h=30;h<=COL;h++)
{
if(MyExcel.GetCellString(i,h)=="r")
{
CString A;
A = MyExcel.GetCellString(1,h);
if(first) //第一个字符串前面不加逗号
first = false;
else
A = "," + A;
Temp.receive_name_ += + A; //加逗号
}
}
}
------解决思路----------------------
BOOL bBegin = TRUE;
for(int i=3;i<=ROW;i++)
{
Temp.receive_name_=_T("");
bBegin = TRUE;
for(int h=30;h<=COL;h++)
{
if(MyExcel.GetCellString(i,h)=="r")
{
A = MyExcel.GetCellString(1,h);
if (bBegin)
{
Temp.receive_name_ +=A;
bBegin = FALSE;
}
else
{
Temp.receive_name_+= _T(",");
Temp.receive_name_+= A;
}
}
}
}
------解决思路----------------------
应该不会啊,你在看看哪里错了,找不到就看看下面程序吧,
CArray<CString, CString> arrayTemp; //定义字符串栈
CString strTemp; //中间变量
for(int i=3;i<=ROW;i++)
{
//此处添加Temp.receive_name_清空程序
strTemp = _T("");
bool first = true;
for(int h=30;h<=COL;h++)
{
if(MyExcel.GetCellString(i,h)=="r")
{
CString A;
A = MyExcel.GetCellString(1,h);
if(first) //第一个字符串前面不加逗号
first = false;
else
A = "," + A;
strTemp += A; //加逗号
}
}
arrayTemp.Add(strTemp); //将字符串入栈
}
int strNum = arrayTemp.GetSize();//获取入栈字符串个数
for(int i=0;i<strNum;i++)
Temp.receive_name_ = arrayTemp.GetAt(i); //获取第i个字符