そのため、ユーザーが入力した単語をファイル内で検索するプログラムを作成しようとしています。一致するものがある場合は「FOUND IT」と表示され、何も見つからなかった場合は「COULDNT FIND ANYTHING」と表示されます (明らかに :p)。ユーザーが選択した単語をファイルでスキャンする方法がわかりません(scanfを介して書き込みます)。
これが私の(機能しない)コードです。アドバイスをありがとう!
#include "stdafx.h"
#include <conio.h>
#include <iostream>
#include <string.h>
#include <string>
#define slovo 255
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
int i;
char secret[slovo];
int outexists,fileexists;
system("Color 02");
setlocale(LC_ALL, "");
FILE*out = fopen("additions.txt", "w+");
if (!out)
{
perror("additions.txt");
getchar();
return 1;
}
else
{
outexists = 1;
}
FILE*file = fopen("db.txt", "r");
if (!file)
{
perror("db.txt");
getchar();
return 1;
}
else
{
fileexists = 1;
}
char artist[slovo];
printf("Welcome, hit ENTER to start looking.\n");
getchar();
printf("Please enter for the word you wish to search for in our database !
\n ");
scanf("%s",&artist);
**/* THIS PART */** if (fileexists == 1 && outexists == 1)
{
while (fscanf(file, "%c", secret) != EOF){
{ if (!strncmp(secret, artist, sizeof(artist)))
{
printf("FOUND IT \n");
fclose(file);
}
else
{
printf("COULDNT FIND IT \n");
fclose(file);
}
}
}
}
printf("Which word do you wish to add ?\n");
scanf("%s", artist);
fprintf(out, "%s", artist);
printf("done! \n");
getchar();
fclose(file);
fclose(out);
getchar();
return 0;
}