如何在for循环中包含两个索引值测试条件?
我想解析一个字符串,用于数组语法(分别找到'['和']'的位置)
string arrangements="a[1]";
所以我试图为时间复杂度目的在一个for循环中做。
我试过了
for(int i=0; i<arrangements.size();i++){
if(arranements[i]=='['){
cout<<"square opening is at : "<<i<<endl;
while(arrangements[i]==']' ){
cout<<"square closing is at : "<<i<<endl;
i++;
}
}
}
我什至试过
for(int i=0; i<arrangements.size();i++){
while(arrangements[i]==']' && arrangements[i]=='['){
cout<<"square closing is at : "<<i<<endl;
i++;
}
}
}
对不起,我没有与任何人保持联系,因此感谢您对好人的帮助。
最佳答案
您可以使用if...else if
或switch
有if...else if
的情况:
const int size = arrangements.size();
for(int i = 0; i < size; ++i)
{
const char a = arrangements[i];
if(a == '[')
cout << "square opening is at : " << i << endl;
else if(a == ']')
cout << "square closing is at : " << i << endl;
}