CSVファイルを使った検索プログラムについて

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
thus

CSVファイルを使った検索プログラムについて

#1

投稿記事 by thus » 11年前

現在、CSVファイルを使った検索プログラム(C++)を作ろうとしています。
開発環境:Visualstudio2012 Windows8 64bit
使用言語:C++
CSVファイルの中は
ことわざ(漢字含む),Kotowaza of English
となっています。

初心者です。関数を2,3個同時に使うとなると、悩み始めるレベルです。

とりあえず、いろいろな関数を調べてかいては見たんですが、案の定エラーが起きました。
訂正も何度かしましたがわからない...というのが現状です。

コード:

#include <stdio.h>
 #include <string.h>

 typedef struct tagKOTOWAZA{
 char japanese[50];
 char english[50];
 } KOTOWAZA;

 int main(void)
 {
 FILE *fin;
 char buf[256];
 KOTOWAZA c[200];
 int i, count;
 char name[50];

 fin = fopen("Book1.csv", "r");
 count = 0;
 while(fgets(buf, 256, fin) != NULL)
 {
 sscanf(buf, "%s %s", 
 c[count].japanese,
 c[count].english);
 count++;
 }
 fclose(fin);

 printf("ことわざを入力してください");
 scanf("%49s", name);

 for(i = 0; i < count; i++)
 {
 if (strcmp(c[i].japanese, name) == 0)
 {
 printf("%s(%s/%d)", c[i].japanese, c[i].english);
 break;
 }
 }
 if (i == count) printf("見つかりません。\n");
 return 0;
 }
一応エラーも載せておきます。
(17): error C4996: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
(218) : 'fopen' の宣言を確認してください。

アバター
みけCAT
記事: 6734
登録日時: 14年前
住所: 千葉県
連絡を取る:

Re: CSVファイルを使った検索プログラムについて

#2

投稿記事 by みけCAT » 11年前

・インデントを整えることをおすすめします。
・35行目で、printf関数のフォーマット指定子(%s、%d)の数と引数の数が一致していません。
・C++とのことなので、fopen系の関数ではなくfstream系のライブラリを利用するべきだと思います。
http://d.hatena.ne.jp/nagardjunas/20110524/1306231384
[search=google]C++ fstream[/search]
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)

アバター
みけCAT
記事: 6734
登録日時: 14年前
住所: 千葉県
連絡を取る:

Re: CSVファイルを使った検索プログラムについて

#3

投稿記事 by みけCAT » 11年前

thus さんが書きました:CSVファイルの中は
ことわざ(漢字含む),Kotowaza of English
となっています。
この入力ファイルのフォーマットだと、japaneseとenglishのデータを得るときには、
sscanfではなくstrtokとstrcpyなどを用いて処理を行うべきだと思います。
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)

thus

Re: CSVファイルを使った検索プログラムについて

#4

投稿記事 by thus » 11年前

回答ありがとうございます。
すみません、インデントしか分からなくて錯乱状態です、ごめんなさい。
行は張り替えて揃えたのですが、まず、何から始めればよいのでしょうか...?

アバター
みけCAT
記事: 6734
登録日時: 14年前
住所: 千葉県
連絡を取る:

Re: CSVファイルを使った検索プログラムについて

#5

投稿記事 by みけCAT » 11年前

開発環境(コンパイラ)を変えてみるといいかもしれません。
http://orwelldevcpp.blogspot.jp/ (C++に対応しています)
http://9cguide.appspot.com/p_9cide.html (主にC言語用ですが、提示されたプログラムのコンパイルは通りました)
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)

閉鎖

“C言語何でも質問掲示板” へ戻る