[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 2chのread.cgiへ]
Update time : 09/30 01:57 / Filesize : 166 KB / Number-of Response : 641
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

【初心者歓迎】C/C++室 Ver.46【環境依存OK】



1 名前:◆NUNUK382Dk mailto:sage [2007/12/27(木) 20:32:47 ]
エスケープシーケンスやWin32APIなどの環境依存なものでもOK。
ただしその場合、質問者は必ず環境を書きましょう。
※sage禁止です(と代々スレに書いてありますが自己判断で)。
【前スレ】
【初心者歓迎】C/C++室 Ver.45【環境依存OK】
pc11.2ch.net/test/read.cgi/tech/1197090562/
【アップローダー】(質問が長い時はココ使うと便利)
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/joyful.htm

357 名前:デフォルトの名無しさん mailto:sage [2008/01/06(日) 20:36:29 ]
大事なところがorz

つまり処理数が多いものならば関数テンプレートを利用した方が良い、などの明確だったりしないまでの決まりのようなものはあるのでしょうか?

358 名前:デフォルトの名無しさん mailto:sage [2008/01/06(日) 20:38:53 ]
>>356
何で?
ぜんぜんもったいなくないと思うけど。
呼び出されてる型のものだけが具体化されるから
効率的だと思うし、実際std::maxテンプレートはあるじゃない。

359 名前:デフォルトの名無しさん mailto:sage [2008/01/06(日) 20:40:57 ]
>>356
>int用のものfloat用のもの・・・・といった具合にたくさんの関数を用意する
これが面倒じゃないと思うならがんばれば?

360 名前:356 mailto:sage [2008/01/06(日) 20:41:07 ]
>>358
ありがとうございます
そうですよねorzもったいないと感じている自分がおかしくてならないです
積極的に使っていこうとおもいます

361 名前:デフォルトの名無しさん mailto:sage [2008/01/06(日) 21:03:26 ]
だから、std::max()を使えってば。

362 名前:デフォルトの名無しさん mailto:sage [2008/01/06(日) 21:06:46 ]
>>361
356は例えばで言ってるだけだろ

363 名前:デフォルトの名無しさん mailto:sage [2008/01/06(日) 21:14:07 ]
>>360
おかしくないです。出てくるコードの大きさを見積もることは必要なことです。


364 名前:デフォルトの名無しさん mailto:sage [2008/01/06(日) 21:17:24 ]
>>356

>int用のものfloat用のもの・・・・といった具合にたくさんの関数を用意する

保守性を考えるとこの考え方はは良くない。
バグがあったら全部直さなきゃいけないし、直し忘れが出てくる可能性がある。
ステップ数が少ない場合でも、バグが出るときは出る。
こういう場合を想定してテンプレートが出てきたわけだし。


365 名前:デフォルトの名無しさん mailto:sage [2008/01/06(日) 22:00:30 ]
templateを使うとexeがバカでかくなるって言うアホがいるんだよな
俺も会社でよく言われるんだわ



366 名前:デフォルトの名無しさん mailto:sage [2008/01/06(日) 22:04:31 ]
そういやテンプレートを使う機会が無い

367 名前:デフォルトの名無しさん mailto:sage [2008/01/06(日) 22:07:18 ]
仮にばかでかくなったとして、どのぐらいのサイズなら問題だと感じるんだろう……

368 名前:デフォルトの名無しさん mailto:sage [2008/01/06(日) 22:13:00 ]
環境によってさまざまだろうね。
組み込み環境なら結構致命的になりかねん気もするけど、それならC++にするメリット少ないし。
一般的なソフトウェアならCDやDVDに入りきらなくなったらとかじゃないのかな?

369 名前:デフォルトの名無しさん mailto:sage [2008/01/06(日) 22:13:48 ]
仮にテンプレート使わなかったとしても、
似たような物作るわけだしな。

370 名前:デフォルトの名無しさん mailto:sage [2008/01/06(日) 22:34:36 ]
>>365
昔のコンパイラは知らないけど、信じがたい。
具現化されるのは自分で呼び出してるものだけだから。
インライン化とか別の理由で大きいんでない?
それともテンプレート使わなくても、もともとバカでかく
なるプログラムかもしれん。

371 名前:デフォルトの名無しさん mailto:sage [2008/01/06(日) 22:43:46 ]
>>370
大きなクラスを丸ごとテンプレートにしたんじゃないか?

372 名前:デフォルトの名無しさん mailto:sage [2008/01/06(日) 22:44:17 ]
オブジェクトファイルのサイズだけ比較すればずっと増えるんじゃね?計ったことないけど


373 名前:デフォルトの名無しさん [2008/01/06(日) 23:01:42 ]
VC++2008express editionでコンソールアプリケーションを作れるか実験してみた結果
できませんでした。
どうしたもんでしょう。

374 名前:デフォルトの名無しさん mailto:sage [2008/01/06(日) 23:04:36 ]
それだけじゃ、何が起こったのかサッパリ

375 名前:デフォルトの名無しさん mailto:sage [2008/01/06(日) 23:07:35 ]
C言語の質問なんだが。
持たせたファイルポインタからファイルネームを得たいんでファイルポインタからメンバーを見てみたら
tmpfnameってのがあったけど、このtmpfnameってそのファイルの名前と考えておk?
あと、これって環境依存?



376 名前:デフォルトの名無しさん mailto:sage [2008/01/06(日) 23:12:35 ]
環境依存

377 名前:デフォルトの名無しさん mailto:sage [2008/01/06(日) 23:12:59 ]
FILE構造体の中身は処理系依存

378 名前:デフォルトの名無しさん mailto:sage [2008/01/06(日) 23:15:56 ]
>>376-377
ありがとうございました。
別の方法で管理することにします。

379 名前:デフォルトの名無しさん [2008/01/06(日) 23:36:51 ]
C言語の質問です
main関数で用意したdouble *xを別の関数の中でmallocを使ってサイズを決めることと数値の代入を行いたいのですが上手く出来ません
どのようにすればいいでしょうか
以下は自分で作ったものの該当部分だけを抜き出し簡略化したものです


#include<stdio.h>
#include<stdlib.h>

void f(double *);

void main(void)
{
  double *x;
  f(x);
  free(x);
}

void f(double *a)
{
  a=(double *)malloc(sizeof(double)*3);
  if(a==NULL){
   printf("メモリ確保失敗\n");
   exit(1);
  }
  a[1]=2.0;
}

380 名前:デフォルトの名無しさん mailto:sage [2008/01/06(日) 23:40:52 ]
ポインタを関数に渡しているといってもポインタという値を渡してるだけ。
そのポインタを関数の中で書き換えてもmainじゃ影響されないから引数消して返り値使うとか、
ポインタのポインタを引数でとるかのどっちか。

381 名前:デフォルトの名無しさん mailto:sage [2008/01/06(日) 23:41:45 ]
>>379
そりゃ、上手くいかんわ。

void f(double **);

void main(void)
{
double *x;
f(&x);
free(x);
}

void f(double **a)
{
*a=(double *)malloc(sizeof(double)*3);
if(*a==NULL){
printf("メモリ確保失敗\n");
exit(1);
}
*a[1]=2.0;
}


全く試してないけど、これでどうよ?

382 名前:デフォルトの名無しさん mailto:sage [2008/01/07(月) 00:01:18 ]
>>381
俺も全く試してないけど

>*a[1]=2.0;
なんか嫌な臭いがする。
優先順位、これでよかったっけ?

383 名前:デフォルトの名無しさん mailto:sage [2008/01/07(月) 00:04:54 ]
>>382
(・A・)イクナイ!!

384 名前:デフォルトの名無しさん mailto:sage [2008/01/07(月) 00:07:09 ]
*a[1]は*(a[1])だったはずだな。
やりたいのは(*a)[1]か?

385 名前:デフォルトの名無しさん mailto:sage [2008/01/07(月) 00:12:12 ]
>>378-384
どうもありがとうございます。
>>381>>384に変更したものを使えば上手くいきました



386 名前:デフォルトの名無しさん [2008/01/07(月) 00:38:10 ]
for(i=0;i<N;i++){
  fscanf(fp,"%lf %lf",&m[i],&n[i]);
}

↑の状態でビルドして実行するとエラーが出る

for(i=0;i<N;i++){
  fscanf(fp,"%lf %lf",&m[i],&n[i]);
  printf("%f %f\n",m[i],n[i]);
}

次に↑のように書き換えてビルドして実行するとエラーが出ない

for(i=0;i<N;i++){
  fscanf(fp,"%lf %lf",&m[i],&n[i]);
}

その後で↑の状態に戻してからビルドして実行すると最初と同じなのにエラーが出なくなっている



こういったことが起こるのはどのような理由でしょうか




387 名前:デフォルトの名無しさん mailto:sage [2008/01/07(月) 00:45:18 ]
すべてのソースを貼り付けるとか
エラーの内容を書くとか
そういう努力をしないとエスパー以外答えられないと思うよ

388 名前:デフォルトの名無しさん mailto:sage [2008/01/07(月) 01:44:26 ]
エスパーしてみる。
ファイル内に改行があってfscanfが2回目以降読み込みに失敗している。

389 名前:デフォルトの名無しさん mailto:sage [2008/01/07(月) 03:26:27 ]
多分初期化忘れ。エラーが出ない方はたまたま

390 名前:デフォルトの名無しさん [2008/01/07(月) 05:17:35 ]
>384
優先順位って難しいね.
みんなちゃんと覚えてるの?

391 名前:デフォルトの名無しさん [2008/01/07(月) 06:18:31 ]
別スレから誘導されて来ました。
改めて、こちらで質問させて下さい。

まず、フラッシュメモリにデータを書き込みます。
そしてそのデータが書き込まれたセクタ?(アドレス?)を取得する方法ってありますでしょうか?

392 名前:デフォルトの名無しさん mailto:sage [2008/01/07(月) 06:35:09 ]
誰だよ、誘導したのwここでもスレ違いだろw
少なくともCレベルじゃメモリアドレスしかわからんだろうから無理じゃね?
OSレベルの話になるね。

393 名前:デフォルトの名無しさん mailto:sage [2008/01/07(月) 07:00:26 ]
>>392
そうですか…
かなり難しいようですね…

環境は、Win32(XP Pro) + VC++ なんですけど…

394 名前:デフォルトの名無しさん mailto:sage [2008/01/07(月) 07:04:39 ]
DOS 時代なら INT 25H(アブソリュートディスクリード)使えば何とかなると思うけど・・・。

395 名前:デフォルトの名無しさん [2008/01/07(月) 07:22:43 ]
Inside Windows NT Disk Defragmenting
technet.microsoft.com/en-us/sysinternals/bb897427.aspx
デフラグ用のAPIではだめかい?



396 名前:393 mailto:sage [2008/01/07(月) 07:56:40 ]
>>394-395
助言ありがとうございます。
がんばって調べてみます!

とりあえず、395さんの紹介して頂いたページを見てみたいと思います。

397 名前:デフォルトの名無しさん mailto:sage [2008/01/07(月) 08:07:54 ]
>>390
自信ない使い方をするときに括弧使えばいいだけだろ。

398 名前:デフォルトの名無しさん mailto:sage [2008/01/07(月) 10:10:50 ]
>>390

考えるのがめんどくさいので、常に括弧付。
可読性も向上。


399 名前:デフォルトの名無しさん mailto:sage [2008/01/07(月) 13:25:53 ]
>>398
int a = (b + (c * d)) - e;とか書くの? 却って可読性が落ちる希ガス。

400 名前:デフォルトの名無しさん mailto:sage [2008/01/07(月) 13:27:27 ]
lispに慣れてればどうということはない

401 名前:デフォルトの名無しさん mailto:sage [2008/01/07(月) 14:24:29 ]
>399
煽りとしてはどうかなあ?


402 名前:デフォルトの名無しさん mailto:sage [2008/01/07(月) 14:34:46 ]
素朴な疑問だろ?

403 名前:デフォルトの名無しさん mailto:sage [2008/01/07(月) 14:43:02 ]
左結合か右結合か、考えるの面倒だよね。
だからきっと、
a = (b = (c = 0));
って書くんだよ。

404 名前:デフォルトの名無しさん [2008/01/07(月) 14:43:30 ]
>>399
ぶっちゃけa = b + c * d - eよりはよっぽどわかりやすい

405 名前:デフォルトの名無しさん mailto:sage [2008/01/07(月) 14:45:20 ]
俺は
a = b + (c * d) - e
だな。
順読み以外は括弧付ける派。



406 名前:デフォルトの名無しさん mailto:sage [2008/01/07(月) 14:46:15 ]

a = c * d + b - e

407 名前:デフォルトの名無しさん mailto:sage [2008/01/07(月) 15:13:45 ]
b,c,d,eの順序に意味がある場合の話だろうjk

408 名前:デフォルトの名無しさん mailto:sage [2008/01/07(月) 15:20:45 ]
質問があります。
今C言語を勉強しようか考えている所なのですが
これを学ぶ事によって、ボンバーマンのようなゲームは作成可能でしょうか?
また作れると仮定しまして、C言語よりボンバーマンのようなゲームを作るのが
簡単な言語はありますでしょうか?

もしよろしければ教えてください、お願いします。

409 名前:デフォルトの名無しさん mailto:sage [2008/01/07(月) 15:29:34 ]
>>408
英語を学ぶことによってマクベスを書くことは可能かどうか、
英語で書くより簡単な言語はあるかと聞くくらい、無意味だ。
こっちにでも逝け。

初心者のためのプログラミング言語ガイド Part6
pc11.2ch.net/test/read.cgi/tech/1193132235/

410 名前:デフォルトの名無しさん [2008/01/07(月) 15:52:46 ]
>>408
どんな言語でも何かを作る時apiや構文等の知識は必要となり
簡単ていう概念はとっぱらったほうがいい。
どんなもんでもある程度確立した物を作るのはめんどうなもんだ。

411 名前:デフォルトの名無しさん mailto:sage [2008/01/07(月) 16:06:29 ]
誘導ありがとうございます。

簡単と言う発言は軽率でした
言語にも向き不向きがあるかと思ったので、
より作りやすいと言う意味でした

それでは誘導先に行ってきますので、
こちらでの質問は取り下げさせてください

412 名前:デフォルトの名無しさん [2008/01/07(月) 22:33:27 ]
藤原紀香相手に中だしSEXするよりは簡単だろう

413 名前:デフォルトの名無しさん mailto:sage [2008/01/07(月) 22:52:17 ]
>>412
おっさん乙

414 名前:デフォルトの名無しさん mailto:sage [2008/01/08(火) 01:33:25 ]
C++の標準I/Oライブラリについてですが、
basic_istream<>やbasic_ostream<>はbasic_streambuf<>
を利用してバッファ入出力を行ってますが、継承はして
ないですよね?basic_istream<>やbasic_ostream<>は
コンポジションとしてbasic_streambuf<>を保持してるのですか?

415 名前:デフォルトの名無しさん mailto:sage [2008/01/08(火) 02:45:31 ]
.jpgとかをいじるのは古いプログラムなんですかね。



416 名前:デフォルトの名無しさん mailto:sage [2008/01/08(火) 02:47:09 ]
>>414 そうともいう。

417 名前:デフォルトの名無しさん [2008/01/08(火) 03:01:57 ]
入力がEUCで漢字コードを検索したい場合、どうやればいいんでしょうか?コンパイラはシフトジスが基本みたいです

418 名前:デフォルトの名無しさん mailto:sage [2008/01/08(火) 03:45:00 ]
>>415
「いじる」ってのをどういう意味で使ってるのかよく分からんが
JPEG<=>ビットマップの変換は古いというか普通ライブラリを使う


419 名前:デフォルトの名無しさん [2008/01/08(火) 04:01:05 ]
int iskanji(int c)
{
return (0xA1 <= c && c<=0xfe)
}


420 名前:デフォルトの名無しさん mailto:sage [2008/01/08(火) 05:28:11 ]
std::vector<int[10]>みたいなことをやりたいのですが、ベクタのベクタにするか、
メンバ変数に配列を持つ構造体のベクタにするしかないんでしょうか


421 名前:デフォルトの名無しさん mailto:sage [2008/01/08(火) 05:53:22 ]
>>420
int[10]は型じゃないっしょ?

422 名前:デフォルトの名無しさん mailto:sage [2008/01/08(火) 07:23:33 ]
>>419
EUC の1バイト目はもうちょっと範囲広いし、
3バイト文字も存在する。

423 名前:デフォルトの名無しさん mailto:sage [2008/01/08(火) 07:49:19 ]
どこのEUCだか。

424 名前:デフォルトの名無しさん mailto:sage [2008/01/08(火) 11:52:47 ]
>>420-421
int[10] は要素数 10 の int の配列型だよ。でもコピーコンストラクタや代入演算子が
使えないんで vector には入れられない。 >420 の言うような回避方法が必要。

425 名前:デフォルトの名無しさん mailto:sage [2008/01/08(火) 12:50:52 ]
バイナリのデータを1バイトづつ読み込んでいって、FFといデータの前に
次の値を書き込むというのをやりたいんですが、こういったことをやる場合、
ifstreamで読み込んでいってデータを見つけたら位置を取得→
ofstreamを使って取得した位置に書き込みという風にやらないといけないのでしょうか?



426 名前:デフォルトの名無しさん mailto:sage [2008/01/08(火) 12:55:28 ]
>>425
C/C++ 標準のファイル操作ではファイルの一部だけを書き換えることはできない。
データの挿入もこれに当てはまる。(ただし元の内容の後ろに追記はできる。)

ってことで新しいデータを含んだファイルの内容を全部 ofstream に突っ込むことが必要。

427 名前:デフォルトの名無しさん mailto:sage [2008/01/08(火) 13:09:13 ]
>>420
std::vector<int(*)[10]>とか

428 名前:デフォルトの名無しさん mailto:sage [2008/01/08(火) 13:14:32 ]
>>425
入出力を別のファイルにしておいて、入力データが「FFとい」だったら
それを出力する前に「次の値」を出力すればよろしい。
一つのファイルでそれを実現するのは、(サイズが変わるのであれば)むずかしい。

429 名前:デフォルトの名無しさん mailto:sage [2008/01/08(火) 13:15:37 ]
>>426
>C/C++ 標準のファイル操作ではファイルの一部だけを書き換えることはできない。
いいえ。

430 名前:426 mailto:sage [2008/01/08(火) 13:23:52 ]
ごめんよ。サイズの変わらない書き換え(上書き)はできるね。データの挿入ができないんだ。

431 名前:デフォルトの名無しさん mailto:sage [2008/01/08(火) 13:31:44 ]
>>426-430
ありがとうございます。勉強になりました。
バイト配列にデータを全部読み込んで、配列をFFの一つ前のデータまで書き込んで→
新しい値を書き込んで→残りの配列を書き込む という方法でやりたいと思いますm(_ _)m

432 名前:デフォルトの名無しさん mailto:sage [2008/01/08(火) 14:51:17 ]
>>431
istreambuf_iteratorとostreambuf_iterator使うと簡単にできそうだな。
速いし。

433 名前:デフォルトの名無しさん mailto:sage [2008/01/08(火) 17:39:27 ]
webカメラ(usb接続)のドライバの取得方法と、
プログラム内でそのドライバを作用させる方法をご教授願えないでしょうか
環境は.net 2003 c++です

434 名前:デフォルトの名無しさん mailto:sage [2008/01/08(火) 18:36:44 ]
ドライバ直じゃなくて普通はDirectShow経由じゃね?

435 名前:デフォルトの名無しさん mailto:sage [2008/01/08(火) 20:05:46 ]
readlineがGPLだったので、自前で書くついでにc++に移植しちゃおうと思いました。
ezstreamというクラスを作って、

string line;
ezstream es;
es.setline("yes");
es.setline("no");
line = es.getline();

と書けば、line=の行でreadline風の動作(ヒストリなどカーソルキー使用可能、ctrl+aなどのemacs風キーバインドも最低限使用可能)
をするところまでは書き上がりました(tab補完はまだですが……)。上の記述では、さらに起動時点でヒストリにyesとnoが入っています。
(つまり、↑を押せばno,yesの順にコマンドラインに出てくる)
で、せっかくなので

ezstream es;
es << "yes";
es << "no";
es >> line;

と記述出来るようにしたいと思っています。

template<class E, class T = char_traits<E> >
class basic_ioestream : public basic_iostream< E, T >{
private:
hogehogehoge;
public:
string getline(void);
string setline(void);
basic_ioestream& operator>>(……

ここで詰まったのですが、どう書けば良いのでしょうか。
それとも>>のオーバーロードだけすれば済むような単純な話ではないのでしょうか?



436 名前:デフォルトの名無しさん mailto:sage [2008/01/08(火) 20:23:50 ]
むしろoperator >>を定義すればよいという話ではないよ。

Boost.Iostreamsを使うのが楽。
www.kmonos.net/alang/boost/classes/iostreams.html

それを使いたくなければ、ググれ。
www.google.co.jp/search?q=iostream+%E6%8B%A1%E5%BC%B5

437 名前:デフォルトの名無しさん mailto:sage [2008/01/08(火) 21:00:35 ]
mac ox10.5を使ってるのですが、次のソースコードをgccで
コンパイルしようとするとエラーが出てしまいます。
ソース-----------------
#define _GNU_SOURCE
#include <stdio.h>
#include <stdlib.h>

int main(void) {
FILE *fp;
char *line = NULL;
size_t len = 0;

while (getline(&line, &len, stdin) != -1) {
printf("%s", line);
}
if (line)
free(line);
exit(EXIT_SUCCESS);
}
----------------------
エラーメッセージ--------
Undefined symbols:
"_getline", referenced from:
_main in ccm08hLk.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
----------------------
getline関数関連のエラーなのですが、ネットを検索していると次のような記述を発見しました。
『MacのGCCはGNUのに手を入れてあるのでstdio.hにgetlineがない』
getlineを使用してコンパイルを成功させるには環境をどのようにすれば良いのでしょうか。

438 名前:デフォルトの名無しさん mailto:sage [2008/01/08(火) 21:09:10 ]
無い関数は作る!

勉強になるから作ってしまおう

439 名前:437 mailto:sage [2008/01/08(火) 21:18:41 ]
すみません。目的としては他の人が作ったソースをコンパイルすることなのです。
使用するソースコードは既に用意されているので、(非常に長いソースコードです)
できればソースコードをいじらないでコンパイルしたいのです。

440 名前:デフォルトの名無しさん mailto:sage [2008/01/08(火) 21:25:02 ]
>>439
まずどの環境のどのコンパイラをターゲットに書かれたソースか調べる。


441 名前:デフォルトの名無しさん mailto:sage [2008/01/08(火) 21:25:12 ]
>>439
別のファイルに関数を作ればいいから、ソース変更しなくてもいいよ。

442 名前:デフォルトの名無しさん mailto:sage [2008/01/08(火) 21:58:11 ]
>>423
eucJP-ms

443 名前:433 mailto:sage [2008/01/08(火) 22:40:06 ]
>>434
VFWを使っていますので残念ながらDirectShowを使うことができません
カメラをUSBポートから引っこ抜いてから再度差し
カメラを動作させるといったことをしたいのですが…

444 名前:デフォルトの名無しさん mailto:sage [2008/01/08(火) 22:50:30 ]
C++で、比較的大きくてかつ静的な連想配列を宣言したいんだけど、
ソースコードにどうやって埋め込むのがスマートでしょうか??

445 名前:デフォルトの名無しさん mailto:sage [2008/01/08(火) 23:25:19 ]
class Hoge {
public:
 const std::map<A, B>& GetMap() {
  static Hoge singleton;
  return singleton.m_map;
 }

private:
 Hoge() {
  // ここで初期化
 }
 std::map<A, B> m_map;
};

こんな感じか?



446 名前:デフォルトの名無しさん mailto:sage [2008/01/09(水) 00:26:45 ]
>>330
それを実行するのにはコンパイラには何か必要なんですかね。

447 名前:デフォルトの名無しさん mailto:sage [2008/01/09(水) 00:40:52 ]
>>446
日本語でおkだな。
コンパイルしたいのであればC++のコンパイルが可能なものであればなんでもいい。
コンパイラに必要なものが知りたいのであれば、ソースファイルだけあればいい。

448 名前:デフォルトの名無しさん [2008/01/09(水) 00:45:13 ]
質問です。
bcc developerを使ってC言語を勉強してるんですが、

#include ""DxLib.h"

int WINAPI WinMain(HINSTANCE hI, HINSTANCE hP, LPSTR lpC, int nC)
{
ChangeWindowMode(TRUE);
if(DxLib_Init() == -1)return(-1);
DrawBox(0,0,120,65535,TRUE);

WaitKey();
DxLib_End();
return(0);
}

と打ち込むと
Error: 外部シンボル 'WinMain' が未解決(C:\BORLAND\BCC55\LIB\C0W32.OBJ が参照)
となります。
いろいろ調べてみた結果Windows アプリケーション→コンソールアプリケーションに
チェックを変えると、
Error: 外部シンボル '_main' が未解決(C:\BORLAND\BCC55\LIB\C0X32.OBJ が参照)
となり、やはりだめです。。
もうにっちもさっちもいきません。どなたかアドバイスお願いします

449 名前:デフォルトの名無しさん mailto:sage [2008/01/09(水) 00:55:34 ]
 #include <windows.h>

コンパイルオプション -W

450 名前:デフォルトの名無しさん mailto:sage [2008/01/09(水) 00:59:49 ]
>>448
よく分からんけど先頭行に
#include<windows.h>
でいけるかも

451 名前:デフォルトの名無しさん mailto:sage [2008/01/09(水) 01:57:55 ]
>>444
ソート済み const 配列の形で定義して、 lower_bound() とかする関数を
インターフェースとしてかぶせとけばいいんじゃない?

452 名前:448 [2008/01/09(水) 02:06:46 ]

説明不足ですみませんでした。
とある参考書を使っていて、「DxLib」というファイルをインクルードして
進めていくらしく、それで#include"DxLib"となっているみたいです。
>>449-450
れすありがとうございます。
#include<windows.h> としたんですが、同じエラーがでました。
コンパイルオプションってどうやっていじるんでしょうか。
BCC developerのプロジェクト設定で
●コンソールアプリケーション(-WC)
Windowsアプリケーション(-W)
というようにチェックするところがあるんですが、
このことですか?

453 名前:デフォルトの名無しさん mailto:sage [2008/01/09(水) 02:12:28 ]
あたりが付いてるならとりあえずやってみてから質問してはどうか

454 名前:448 [2008/01/09(水) 02:16:38 ]
やってみたんですが、だめでした。
根本的に間違ってるんでしょうか

455 名前:デフォルトの名無しさん mailto:sage [2008/01/09(水) 02:29:52 ]
>>451
それなんてEffective(ry



456 名前:デフォルトの名無しさん mailto:sage [2008/01/09(水) 02:38:20 ]
 >>448
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/5704.zip

素直に、VC++とかにしてくれれば、話は早いんだが、まぁ、ゲーム作りたいやつは応援する主義なんでね。

457 名前:448 [2008/01/09(水) 02:54:28 ]
>>456
ありがとうございます!
さっそくやってみます






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<166KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef