[問題] 從txt檔裡找有使用者輸入相符的單字
( *[1m *[m 為色碼,可以按 Ctrl+V 預覽會顯示的顏色 )
( 未必需要依照此格式,文章條理清楚即可 )
這是上c++老師給的作業
要設計一個程式
要讓使用者輸入一個單字
然後從字典(.txt檔)裡抓出有相符的單字出來
如:使用者輸入:ing
螢幕要輸出 ring
happing
going
.
.
.
遇到的問題: (題意請描述清楚)
編譯成功,但是使用者輸入後跳出錯誤
希望得到的正確結果:
請輸入一個字
ing
字典找到ring
字典找到going
字典找到happing
.
.
.
程式跑出來的錯誤結果:
請輸入一個字
ing
terminate called after throwing an instance of 'std::out_of_range'
what(): basic_string::substr
開發平台: (例: VC++ or gcc/g++ or Dev-C++, Windows or Linux)
G++
有問題的code: (請善用置底文標色功能)
#include<iostream>
#include<string>
#include<fstream>
using namespace std;
int main(){
string str1,str2;
int x,y;
cout<<"請輸入一個字"<<endl;
cin>>str1;
fstream f1;
f1.open("/.dict.txt");
x=str1.size();
while(!f1.eof()){
getline(f1,str2);
y=str2.size();
if(str2.substr(y-x+1,x)==str1){
cout<<"字典找到"<<str2<<endl;
}
}
f1.close();
return 0;
}
補充說明:
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 120.124.104.173
→
12/01 20:11, , 1F
12/01 20:11, 1F
→
12/01 20:25, , 2F
12/01 20:25, 2F
→
12/01 20:57, , 3F
12/01 20:57, 3F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章