- 最後登錄
- 2024-5-3
- 在線時間
- 3180 小時
- 註冊時間
- 2004-8-20
- 閱讀權限
- 20
- 精華
- 0
- UID
- 12056
- 帖子
- 475
- 積分
- 967 點
- 潛水值
- 31679 米
| 不知是我表達能力太差還是我理解能力太差....聽不太明白大大想表達的意思
首先...我是看到大大在一樓的留言範例- if(i0 == i1 && i0 == i2 && i0 == i3 && i0 == i4 && i0 == i5)
- // 動作
複製代碼 這段我不知用來判斷甚麼?
如果只是要判斷\字串之間是否有重複....那只需...如下- #include<iostream>
- #include<windows.h>
- #include<string>
- using namespace std;
- const int max_count = 4;
- string str[max_count];
- //隨意填值...反正是測試
- void set_data()
- {
- /*for (int i = 0; i < max_count; i++)
- {
- str[i] = i + 48;
- }*/
- str[0] = "ABC";
- str[1] = "ABCD";
- str[2] = "BC";
- str[3] = "ABCD";
- }
- void logic()
- {
- bool c1 = false;
- for (int i = 0, ii = 0; i < max_count; i++)
- {
- for (int j = i + 1; j < max_count; j++, ii++)
- {
- if (strcmp(str[i].c_str(), str[j].c_str()) == 0)//代表相同
- {
- c1 = true;
- cout << "index = " << i << " 的 " << str[i] << " 和 " << "index = " << j << " 的 " << str[j] << " 是一樣的\n";
- //break;//若是抓到一樣就中斷的話....
- }
- //cout << "前比較字串index = " << i << "\t後比較字串index = " << j << "\t結果存於布林index = " << ii << "\n";
- }
- }
- if (c1)//有字串是一樣的
- {
- //動作
- }
- }
- void main()
- {
- set_data();
- logic();
- system("pause");
- }
複製代碼 另外...被大大在一樓的範例誤導 + 我也沒注意...strcmp的回傳是int型態等於0表示兩字串相等...等於1與等於-1都是不相等....所以不能用bool型態紀錄...因為0跟-1都算false... |
|