#include <iostream>
#include <map>
#include <iterator>
using namespace std;
int main() {
FILE *fPtr = fopen("english.txt", "r");
if (fPtr == NULL) {
cout << "Could not open the file." << endl;
system("pause");
return 0;
}
char word[100];
map <string, int> freq;
while (!feof(fPtr)) {
fscanf(fPtr, "%s", word);
freq[word]++;
}
multimap <int, string > freq_rev;
map<string, int>::iterator it;
for (it = freq.begin(); it != freq.end(); it++)
freq_rev.insert(make_pair(it->second, it->first));
multimap <int, string>::reverse_iterator myit;
int count;
for (myit = freq_rev.rbegin(), count = 0; count < 10; myit++, count++)
cout << (*myit).second << " " << (*myit).first << endl;
fclose(fPtr);
system("pause");
return 0;
}
데이터 구조 과정에 Visual Studio 2017을 사용하고 있습니다. 위의 코드는 많은 단어가 들어있는 english.txt 파일을 조사하고,이 단어의 빈도를 감지하고 자주 사용되는 단어 상위 10 개를 인쇄합니다. 코드의 오류에 도착하기 전에디버그 : FASTLINK -이 오류가 무엇입니까?
은, VS (17)는 제공이 error :
C 찾을 수 없습니다 :/사용자/사용자 이름/문서/비주얼 스튜디오 2017/프로젝트/프로젝트 이름/프로젝트 이름/디버그/프로젝트 이름을 .obj'.projectname.exe 은 디버깅을위한 개체 파일이 필요한/DEBUG : FASTLINK로 작성되었습니다.
출력 창의 디버그 창에 후속 오류가 기록됩니다.
저는 경험이 많은 프로그래머가 아니지만 유용한 정보를 찾을 수 없습니다. 이게 뭐야, 어떻게해야합니까?
텍스트에 오류를 넣으십시오. 그리고 깔끔한 것을 시도한 다음 완전한 재건을하십시오. –
이 오류는 코드와 관련이 없거나'std :: multimap'을 사용하는 것과 아무런 관련이 없습니다. 메시지가 말하는 것을 다시 읽으십시오. – user0042
글쎄,'for (myit = freq_rev.rbegin(), count = 0; count <10; myit ++, count ++)'는 정확하지 않습니다. 'myit'이 유효하기 전에 당신이 그것을 시도하고 참조를 취소하기 전에 결코 확신 할 수 없습니다. – NathanOliver