考えているのは 複数行の文字列取得→ボタンを押すと文字列の表示→時々画像の変更→繰り返し...というもので、画像の変更もcsvにマーカー(特定の文字)をおいてそれを読まれたときに画像を書き換えるというようにしたいです。
まず、11章のファイルロードをちょっとだけ書き換えたものが以下になります。この部分は始めたばかりなのでまだ全然できておりませんが・・・
#include "GV.h"
extern int white;
int input[64];
char inputc[64];
int j=0;
void scene_window(){
//会話ウインドウとボタンの設定
}
void scene_load(){
//テキストをファイルから読み込む方式にしたい
int n,num,i,fp;
char fname[32]={"csv/text.csv"};
fp = FileRead_open(fname);//ファイル読み込み
if(fp == NULL){
printfDx("read error\n");
return;
}
n=0 , num=0;
while(1){
for(i=0;i<64;i++){
inputc[i]=input[i]=FileRead_getc(fp);//1文字取得する
if(inputc[i]=='/'){//スラッシュがあれば
while(FileRead_getc(fp)!='\n');//改行までループ
i=-1;//カウンタを最初に戻して
continue;
}
if(input[i]==',' || input[i]=='\n'){//カンマか改行なら
inputc[i]='\0';//そこまでを文字列とし
break;
}
if(input[i]==EOF){//ファイルの終わりなら
goto EXFILE;//終了
}
//ここのswitch文は必要ないので削除
}
num++;
if(num==18){
num=0;
n++;
}
}
EXFILE:
FileRead_close(fp);
}
void scene_graph(){
DrawGraph(0,0, img_scene[0][0],false);
DrawGraph(0,330,img_scene[0][1],true);
//for(int j=0;j<64;j++)
DrawString(20,320,inputc[j],white);
//描画云々
}
void scene_main(){
scene_load();
scene_window();
scene_graph();
}
掲示板のなかを色々と見てみたのですが、原因や文字列の表示の仕方がいまいちわかりませんでした。
プロジェクトのプロパティで文字コードをUnicodeからマルチバイト文字に変更という作業はしております。
エラーの解決とこの部分を作るためのアドバイスなどよろしくお願いします。