Re: 大至急お聞きしたいんですが ( No.1 ) |
- 名前:通 日時:2008/10/07 13:00
雑談のほうにも書いたのですが、
まず、環境を教えてください。
できれば、該当のGameDataInit関数のコードも
あると良いかも知れません。
メッセージ的にVC2008でしょうか?
見た感じリンクエラーっぽいですが、
プロジェクトの作成は1から行った物でしょうか?
であれば、HPに紹介されている設定をもう一度
見直すほうが良いかもしれません。
|
Re: 大至急お聞きしたいんですが ( No.2 ) |
- 名前:淳一 日時:2008/10/07 16:52
通さん
ご返事ありがとうございます。
初めてプログラムについて問題聞きますから、雑談的な質問ですみません。
環境:
VisualC++ 2005 Express Edition
OSはwindows XP
さっきの言ったソースはモジュール分割もして、なかなか説明しにくいですが。
今、↓に簡単なソースを書きましたが。
#include<stdio.h>
#include "DxLib.h"
// WinMain関数
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpCmdLine, int nCmdShow )
{
int A = 0 ;
int Cr ;
// DXライブラリの初期化
if( DxLib_Init() == -1 ) return 0;
// 白の色コードを保存
Cr = GetColor( 255 , 255, 255 ) ;
FILE *fThePowerIsEnemy;
if((fThePowerIsEnemy=fopen("ThePowerIsEnemy.txt","r"))==NULL)
DrawString( 0 , 0 , "error" , Cr )
{
fscanf( fThePowerIsEnemy, "%d",&A);
}
fclose(fThePowerIsEnemy);
DrawFormatString( 0, 80, Cr, "読み込んだデータは%d", A ) ;
// ボタンが押されるまで待つ
WaitKey() ;
// DXライブラリ使用の終了
DxLib_End() ;
return 0 ;
}
↑プロジェクトフォルダの中に、ThePowerIsEnemy.txtってファイルが入ってます。内容は数字の1;でも、読み込むすらできませんが。
なんか問題ありますか?
|
Re: 大至急お聞きしたいんですが ( No.3 ) |
- 名前:通 日時:2008/10/07 17:20
現状はコンパイルが通って、
いないという事で良いですか?
もう一度聞きますが、
プロジェクトの作成は1から行った物でしょうか?
標準ライブラリ系のリンクが対象外になっていると
CRTライブラリに含まれる関数(scanfなど)が
使用できなくなります。
いま手元に2005をインストールしている環境が
無いので帰ったら試してみますが、
ぱっとみ、
>if((fThePowerIsEnemy=fopen("ThePowerIsEnemy.txt","r"))==NULL)
>DrawString( 0 , 0 , "error" , Cr )
>{
これはコンパイルエラーでは。。。?
|
Re: 大至急お聞きしたいんですが ( No.4 ) |
- 名前:キーチック 日時:2008/10/07 18:08
2005になると,fscanfも使えますが,セキュリティの関係上
fscanf_s
を使えと言ってきたはずですが
あとはヘルプ参照でいけると思います
|
Re: 大至急お聞きしたいんですが ( No.5 ) |
- 名前:淳一 日時:2008/10/08 01:26
通さん、キーチックさん
ご返事ありがとうございます。
今バイトから帰ったばかりのでコメント遅れてすみませんでした。
無事できました!!!!
さっきトップぺーじのDXライブラリの使い方のところにしたがって一からも一回設定しましたが、今回無事できていました。
実は前の間200百時間ぐらいずっとこのままの設定でゲーム作っていましたけど、たぶん標準関数使っていなかったから、なにも問題なかったんです。
win32コンソールアプリケーションじゃなくて、空のプロジェクトを作成してプログラムを書いてたんです。今回いろいろ設定をして、win32コンソールアプリケーションでプロジェクトを使って標準関数また使えるようになった。
ちなみに、>if((fThePowerIsEnemy=fopen("ThePowerIsEnemy.txt","r"))==NULL)
>DrawString( 0 , 0 , "error" , Cr )
>{
貼り付けるの時に、DrawString( 0 , 0 , "error" , Cr ) の後ろ”;”がわすれて、すみません。^^;
今このプログラムは無事コンパイルできるから助かります!!!
RPgを作っていますが、ダンジュン系ですから、大量のマップチップのデータをいろいろ書き込みたいし、セーブのために標準関数も欠かせないんですから、すごくあせていました。汗
どうも、返事ありがとうございます。
|
Re: 大至急お聞きしたいんですが ( No.6 ) |
- 名前:通 日時:2008/10/08 02:29
>後ろ”;”がわすれて
そこにセミコロンを入れるとif文がそこで
完結してしまうので、次のブロック演算子{}の
中の処理はfopenが失敗しても成功しても、
行われてしまいます。
|