- 1 名前:デフォルトの名無しさん [03/05/31 23:13]
- 一応Part3を立てておく。スレ需要がなければ下がるのみ。
機能無制限で使える本格的な無料コンパイラBC++についてのスレ。 ダウンロードはこちらから。 ↓ www.borland.co.jp/cppbuilder/freecompiler/ 進行は遅いですがまったりやりましょう 前スレ part1 > pc3.2ch.net/test/read.cgi/tech/1002377328/ part2 > pc2.2ch.net/test/read.cgi/tech/1030493157/ 関連スレ C++相談室 part10 pc3.2ch.net/test/read.cgi/tech/1029315669/ C Builder相談室 Part3 pc3.2ch.net/test/read.cgi/tech/1016065855/ Generic Programming with C++ Template pc3.2ch.net/test/read.cgi/tech/1008593126/
- 513 名前:デフォルトの名無しさん mailto:sage [04/02/18 15:47]
- >>505
ポインタは、文字列「ではない」。ただのアドレス変数だ。アドレスって知ってる? まず配列を学ぶこと。それからポインタを学ぼう。 教えた経験が無いから、こんなサンプルで良いのかわからないけど… #include <stdio.h> int main(int argc, char *argv[]){ char buf[16], *p; p = &(buf[0]); *p++ = 'a'; *p++ = 'b'; *p++ = 'c'; *p++ = 0; printf("%s\n", buf); }
- 514 名前:505 [04/02/18 17:13]
- レスありがとうございます。
ポインタについてはCASL2をやってたことがあるのでなんとなく理解できました。 それで、新たにコードを書いてみたのですが、思ったとおりの動作をしませんでした。 printfで変数を書き出してちょこちょこ確認してみたのですが、 どうやら1桁目が終わって、 continue を入れて2度目のループを開始させると配列chrが参照できなくなっていました。 1度目のループのとき、chr[0]とすると、「a」と出るのですが 2度目のループだとnullが出てしまいます。 そーす ・www.uploda.net/anonymous/etc2/upload21489.txt
- 515 名前:505 mailto:sage [04/02/18 17:21]
- 自分としては、1桁目が終了したらcontinueでwhileまで戻し、
2桁目を開始させ、s1[0]に'a'を書き込んだら、再起処理をし、 次に書き込むときはポインタを1つ後ろにずらして aa ab ac とさせようとしたのですが、エラーはでないのですが期待した動作をしませんでした。
- 516 名前:デフォルトの名無しさん mailto:sage [04/02/18 17:21]
- >>514
パッと見だけど、s1用のメモリはどこに確保してるんだ?
- 517 名前:デフォルトの名無しさん mailto:sage [04/02/18 17:45]
- 5桁分のchar配列用意して
各桁をインクリメントしていくfor文をネストするんじゃだめなの? (桁数に対する汎用性がないけど)
- 518 名前:507 mailto:sage [04/02/18 17:45]
- >>514
>ポインタについてはCASL2をやってたことがあるのでなんとなく理解できました。 なんとなく理解できたって、 全く理解出来てないから、そんな訳の分からないソースになるんだって
- 519 名前:505 mailto:sage [04/02/18 17:50]
- >>516
メモリの確保は最初に決めないとだめなんでしょうか? 宣言だけしておいて、あとから確保ということはできないのでしょうか? ご指摘の通り、メモリをとりあえず10だけ確保して、 strcatからstrcpyに変えてみたところ a . . z aa . . az まではうまくいきました。まだ動作がおかしいのでもう少し直してみます。
- 520 名前:デフォルトの名無しさん mailto:sage [04/02/18 18:02]
- そろそろ入門書10回通読指令出していいですか?
- 521 名前:デフォルトの名無しさん mailto:sage [04/02/18 18:10]
- >>519
>宣言だけしておいて、あとから確保ということはできないのでしょうか 何処で確保してるつもりだったんだ?
- 522 名前:デフォルトの名無しさん mailto:sage [04/02/18 18:16]
- > char *s1 = "";
ここで、s1には "" を格納するためのアドレスが入っていて そのアドレスの先には '\0' を入れるための 1byte 分のメモリしか 確保されていない。
- 523 名前:505 mailto:sage [04/02/18 18:25]
- 再帰処理してやっと何桁でも対応できるようになりました。
どうもありがとうございました。 >>522 つまり*s1="a"とした場合、s1[0]のアドレスにa、s1[1]に\0が 入り、2byte分しか確保されないということでしょうか? 変数s1は桁数なので、桁数が上がるほど確保しなければならいのですが、 こういう場合も、やはり最初に確保しておくしかないのでしょうか? とりあえず今はs1[10]としてあるんですが、9桁を超えた場合、 メモリが足りなくなって誤動作してしまうので、確保しなおしたいのですが。
- 524 名前:デフォルトの名無しさん mailto:sage [04/02/18 18:27]
- 某家電(量販)店が無償で配布されているオープンソースソフトウェアを自社開発と称して
自店商品の機能向上を謳って抱合せ販売していた模様。 また、この店ではオープンソースソフト単独でも販売し利益を得ていたようです。 開発元には、クレーム等の連絡先として開発者のメールアドレスを勝手に表記されていた為、 問い合わせメールが殺到し開発者のWebページが閉鎖に追い込まれています。(2004/2/16現在) 【店の身勝手で阿呆な言い分】 「これで有名になったんだから良かったと思ったほうがいい」 「ユーザーサポートの費用払ってやってもいい。 その代わりソフトの権利はウチの会社でもらう。月1000円」 「所詮タダで配ってるソフトだから誰の著作権も何もない、 ウチでつくってるといえばウチのもんだよ。」 詳しくは下記スレにて熟知せよ。 news4.2ch.net/test/read.cgi/news/1077067632/
- 525 名前:デフォルトの名無しさん mailto:sage [04/02/18 18:28]
- >>523
malloc()とfree()を使うなり、アルゴリズムを見直すなり…
- 526 名前:デフォルトの名無しさん mailto:sage [04/02/18 18:34]
- >>525
new() と delete()を(以下略
- 527 名前:505 mailto:sage [04/02/18 19:13]
- なるほど、動的にメモリを確保できるんですか。
Perlとかだとメモリの確保とか気にしないで出来たのでとっつきにくいですね。 C++だとnew()とdelete()がよいらしいのでこれを使ってみます。 どうもありがとうございました。
- 528 名前:デフォルトの名無しさん [04/02/18 20:10]
- レス遅くなってすいません
>>510さん そのやり方でやったら確かに動いたは動いたのですが、 トリップとして出てきてしまいます。 perlのcrypt関数と同じ動作をさせたいのですが・・ スレ違いのような気がしてきたのでC++相談室に移動します。 申し訳ございません。
- 529 名前:デフォルトの名無しさん mailto:sage [04/02/18 23:30]
- >527
c++ならstlつかえばresize()も簡単。だけどあんたの場合それ以前の問題外な状況だったわけさ
- 530 名前:デフォルトの名無しさん mailto:sage [04/02/19 00:17]
- メモリ上でどんなことが起きているかをまったく理解しなくても
超(?)高級言語なら問題なく使いこなせるわけか… なんとなく怖い気もする
- 531 名前:デフォルトの名無しさん mailto:sage [04/02/19 00:49]
- >>530
それはプログラミング言語の1つの理想なわけで
- 532 名前:デフォルトの名無しさん mailto:sage [04/02/19 17:50]
- こわいっつーか安心だな
- 533 名前:デフォルトの名無しさん mailto:sage [04/02/19 19:08]
- >>527
コンテナ使える所はコンテナ使った方がいいよ。 newやdeleteさえ自動的にやってくれる。但し中身が 配列だったりするとやはりnewは使わないといけないがな。 クラスのコンストラクタとデストラクタにそういう雑仕事を突っ込 んでしまえば vector<vector<Class> > という形で解決できる 事もある。
- 534 名前:デフォルトの名無しさん mailto:sage [04/02/19 19:30]
- >>527は>>533のアドバイスを今すぐに活かせるんだろうか。
- 535 名前:デフォルトの名無しさん mailto:sage [04/02/20 00:47]
- >>534
今は判らんでも、近い将来理解できるかもしれない。 出来るやつは、こういいうちょっとしたアドバイスを覚えてるもんよ。 >>527氏はどうか判らんけど(w
- 536 名前:デフォルトの名無しさん mailto:sage [04/02/20 01:58]
- ilink32でDLLを自作しました
それにimplibをかけて*.libを作りました この*.libも含めて新規に*.exeを作成する時に ilink32のどこらへんに書くのでしょうか? ilink32のコマンドラインの書式の 真ん中あたりのobjsの部分の最後とか? それとも、書式の後のほうの[libs]のところとか? (import32.libの次あたり)
- 537 名前:デフォルトの名無しさん mailto:sage [04/02/20 02:49]
- 俺だったら、ilinkの書式を調べるの面倒だから
bcc32のコマンドラインに追加する。 実用的には、.hにpragma commentで。
- 538 名前:デフォルトの名無しさん mailto:sage [04/02/20 19:10]
- これってwindowsプログラムも出来る?
- 539 名前:デフォルトの名無しさん mailto:sage [04/02/20 19:22]
- 出来るよ。手間はかかるけど。
- 540 名前:デフォルトの名無しさん mailto:sage [04/02/20 19:44]
- consoleアプリもwindowsプログラムだ!
と主張すれば簡単にできる。
- 541 名前:デフォルトの名無しさん mailto:sage [04/02/20 19:51]
- というかwindowsプログラムしかできないよなw
- 542 名前:デフォルトの名無しさん mailto:sage [04/02/20 22:10]
- www.darkstar-clan.de/download.php?id=24&s=info
をcstrikeフォルダーにこぴーするとはいれるよ
- 543 名前:デフォルトの名無しさん mailto:sage [04/02/20 23:49]
- >>538
>>409
- 544 名前:デフォルトの名無しさん mailto:age [04/02/25 18:07]
- age
- 545 名前:デフォルトの名無しさん [04/02/25 21:23]
- DOSのウインドウじゃなくて
普通のウインドウを表示するにはどうしたらいいんだ?
- 546 名前:デフォルトの名無しさん mailto:sage [04/02/25 21:24]
- ふつーって
- 547 名前:デフォルトの名無しさん mailto:sage [04/02/25 21:24]
- ほいよ
ttp://www.kumei.ne.jp/c_lang/bcc/index.html 第五章を嫁
- 548 名前:デフォルトの名無しさん mailto:sage [04/02/25 21:27]
- >>545
”普通のウインドウ”は呼び出すんじゃなくて作るの 「猫でもわかるプログラミング」でぐぐって読んでみるべし
- 549 名前:デフォルトの名無しさん mailto:sage [04/02/25 21:46]
- プログラムをBCCDeveloperから起動して、GetOpenFileNameを実行するとフリーズし、
ダブルクリックで起動するとファイルを開くダイアログが出るんですが、こういう症状の人他にいますか?
- 550 名前:デフォルトの名無しさん mailto:sage [04/02/25 22:10]
- 似た現象で昔めちゃくちゃ悩んだ。
色々調べた結果、どっかがおかしいらしい(==俺のせいではない)ことはわかったが、 どうすればいいのかを知る前にBCB買ってしまったので直し方は未だ知らん。 BCBのほうは問題無し。
- 551 名前:デフォルトの名無しさん mailto:sage [04/02/25 22:25]
- さんくすです
- 552 名前:デフォルトの名無しさん mailto:sage [04/02/25 22:25]
- developerの不具合対処っていうとデバッガ消せ、くらいしか思いつかないなあ
今ちょっとコード書いて調べてみるかな
- 553 名前:デフォルトの名無しさん mailto:sage [04/02/25 22:46]
- ためしにこれ
ttp://www3.big.or.jp/~schaft/program/getopenf/getopenfC.html をBCCDeveloperから起動してみました。 フリーズせず、期待どおりファイルを開くダイアログが出ました。
- 554 名前:550 mailto:sage [04/02/25 22:50]
- BCCDeveloperのせいではなかったはず。
- 555 名前:デフォルトの名無しさん mailto:sage [04/02/25 23:00]
- >>553 質問したものですが、ウチではダメでした。
>>554 そうなんですか。Developerを介さなければ問題はないので、まあこのままでもいいとします。 ありがとうございました。
- 556 名前:デフォルトの名無しさん mailto:sage [04/02/25 23:02]
- ちと違うけど。
ttp://homepage3.nifty.com/aokura/tips/trouble.html
- 557 名前:デフォルトの名無しさん mailto:sage [04/02/25 23:17]
- >>556
紹介さんくす。でも解決しなかった・・・。 しかし自分だけじゃないことがわかってちょっと安心しました。
- 558 名前:デフォルトの名無しさん [04/02/26 12:40]
- >>1ってコンパイラついてんの?
俺コンパイラDLしていままでやってたんだけど
- 559 名前:デフォルトの名無しさん mailto:sage [04/02/26 12:47]
- そりゃあまあフリー「コンパイラ」ですから
- 560 名前:デフォルトの名無しさん mailto:sage [04/02/26 12:49]
- コンパイル「のみ」出来ます!!
- 561 名前:デフォルトの名無しさん mailto:sage [04/02/26 12:51]
- >>560
リンクもできるしgrepやmakeもついてるしDLLからインポートライブラリも作成できる
- 562 名前:デフォルトの名無しさん mailto:sage [04/02/26 14:04]
- >>555
うちはファイルダイアログが出ないって現象が起こったことがある。 その時は ofn.lpstrFile = szFileName; この辺の設定をする前に memset( szFileName, '\0', sizeof( szFileName ) ); を入れたら動くようになった。 現象が違うので参考にならないかもしれないけど。
- 563 名前:デフォルトの名無しさん [04/02/26 21:43]
- Visual C++ の __int64 (64bit整数) に相当する Borland C の型はなんでしょ?
- 564 名前:デフォルトの名無しさん mailto:sage [04/02/26 22:09]
- >>563
__int64 Borland C++ 5.6.4 (C++BuilderX)ならlong longも使える。
- 565 名前:デフォルトの名無しさん mailto:sage [04/02/26 22:09]
- 当然、__int64ではないことを確認してから聞いてるんだよな?
- 566 名前:デフォルトの名無しさん mailto:sage [04/02/27 09:11]
- >>562
俺もそれで悩んだことある。 ダイアログのデフォルトファイル名になるから "" で初期化しとかないといけないんだよなぁ。
- 567 名前:デフォルトの名無しさん mailto:sage [04/02/27 10:05]
- 4GB以上のファイルを書き出す簡単な方法知ってる方、教えてください。
Cマガのだといまいちわからないんで。 お願いします。
- 568 名前:デフォルトの名無しさん mailto:sage [04/02/27 10:11]
- >>567
CreateFile, SetFilePointer, WriteFileで普通にできないか?
- 569 名前:デフォルトの名無しさん [04/02/27 12:46]
- >>568
API使わないんで・・ 勉強してみます ありがとうございました
- 570 名前:デフォルトの名無しさん mailto:sage [04/02/27 23:50]
- >567
Athlon64 / Opteronを導入する
- 571 名前:デフォルトの名無しさん mailto:sage [04/03/01 07:24]
- 猫でもわかるのBCC編を終わらせて
次にSDK編をちょっとやってみたけど、BCCdeveloper+BCCformでもいけるね。 > myProg.hbrBackground =(HBRUSH__ *)GetStockObject(WHITE_BRUSH); これだけ明示的にキャストしてやらないとコンパイル通らなかったけど、あとはスムーズ。
- 572 名前:デフォルトの名無しさん mailto:sage [04/03/01 16:33]
- BuilderXでも結構イケル
- 573 名前:デフォルトの名無しさん mailto:sage [04/03/02 02:07]
- >>572
個人情報入力するのがうざくてスルーしたんだけど落としてみるか。
- 574 名前:デフォルトの名無しさん mailto:sage [04/03/03 01:42]
- BCCformって任意のフォルダに解凍できないんだけど、どうしてでしょうか
- 575 名前:デフォルトの名無しさん mailto:sage [04/03/03 02:14]
- なんでだろうね。でもとりあえずデフォルトで解凍すればいいんじゃない?
- 576 名前:デフォルトの名無しさん [04/03/03 19:39]
- 初心者です
BCCにBCCdeveloperを組み合わせて使ってるんですけどデフォルトのエディター がとても使いにくい。特に括弧{ を指定したら相当する括弧} が ハイライトされないのが私のような初心者にはつらいです。 色も少ないし。(これは設定できるのかもしれませんが) ためしにリソースエディタをsakuraに指定してみましたが何の変化も ありません。いい方法をご存知でしたら教えてください。
- 577 名前:デフォルトの名無しさん mailto:sage [04/03/03 19:48]
- >>576
>初心者です これ書くと答えてもらえないよ
- 578 名前:デフォルトの名無しさん mailto:sage [04/03/03 20:25]
- >>576
BCCdeveloperでも使いにくいのかよ・・・
- 579 名前:デフォルトの名無しさん mailto:sage [04/03/03 20:36]
- >>576
リソースエディタを変更してどうするつもりだ。
- 580 名前:デフォルトの名無しさん mailto:sage [04/03/03 21:37]
- >>576
対応括弧にジャンプする機能じゃ不満?
- 581 名前:デフォルトの名無しさん mailto:sage [04/03/03 22:38]
-
CTRL+「 [ 」 でとりあえず対処しよう
- 582 名前:デフォルトの名無しさん mailto:sage [04/03/03 22:55]
- >>576
ソースの書き方(インデントの使い方)が悪い 一目で括弧の対応がわかるようなコーディングスタイルにしる
- 583 名前:デフォルトの名無しさん mailto:sage [04/03/03 23:25]
- まさかそんな馬鹿な書き方しないでしょ。普通は。
- 584 名前:デフォルトの名無しさん mailto:sage [04/03/03 23:27]
- 世の中に馬鹿がいないとでも思ってるのか?
- 585 名前:デフォルトの名無しさん mailto:sage [04/03/04 00:09]
- 少し苦労するくらいがフリー環境っぽくて俺は好き
- 586 名前:デフォルトの名無しさん mailto:sage [04/03/04 00:17]
- つーか逆に、VCとかって対応括弧がハイライトされるっけ?
俺はエクセルでしか見たことないが・・・
- 587 名前:デフォルトの名無しさん mailto:sage [04/03/04 01:40]
- うちのvc6はハイライトされない。対応括弧へのジャンプはある
- 588 名前:デフォルトの名無しさん mailto:sage [04/03/04 03:17]
- sakots.pekori.jp/cgi/sn/src/up0996.png
BCCDEVが使いにくいなんて嘘。 おまいらはどんな風にカスタマイズしてますか?
- 589 名前:デフォルトの名無しさん mailto:sage [04/03/04 03:41]
- >>588
黒背景なのに文字見やすいね、ソースも綺麗だ 参考にさせてもらおう
- 590 名前:デフォルトの名無しさん mailto:sage [04/03/04 03:51]
- インストールは楽だし、シンプルだし、よく手に馴染む使いやすさが心地よいな。
自分ではあまりカスタマイズしていないつもりだが、 手元のDeveloperは>>588とほとんど同じ外見だった。 フォントはゴシック9pt
- 591 名前:デフォルトの名無しさん mailto:sage [04/03/04 04:12]
- >>588
文字が太いけどそれはどうやってやるんですか?
- 592 名前:588 mailto:sage [04/03/04 04:25]
- >>591
太字(B)にはしてません。 HG明朝Eというフォントを使ってます。
- 593 名前:デフォルトの名無しさん mailto:sage [04/03/04 09:16]
- ディフォが一番見やすいなぁ。588のパッと見いいけど疲れそう
- 594 名前:デフォルトの名無しさん mailto:sage [04/03/04 09:50]
- 俺もデフォルトで使ってるけど、シンボル色変えると見やすいのは参考になりました
- 595 名前:デフォルトの名無しさん mailto:sage [04/03/04 16:30]
- >>588みたいにフォント変更したいんだけど、選べる項目が5つしかありません
項目を増やすにはどうすればいいのでしょうか?
- 596 名前:デフォルトの名無しさん mailto:sage [04/03/04 17:01]
- >>595
ttp://www.t-dacs.com/kanzen/font.html
- 597 名前:デフォルトの名無しさん mailto:sage [04/03/04 22:23]
- >>596
ありがとう、買わないといけないみたいですね
- 598 名前:デフォルトの名無しさん mailto:sage [04/03/05 01:58]
- 猫でも(rの4章にある通りにやっても、
メニューの「実行」「実行」の部分が灰色のままでテストラン出来ないのですが、 それはこちらの環境のせいですか?
- 599 名前:デフォルトの名無しさん mailto:sage [04/03/05 02:45]
- ソースができたら、コンパイル、リンクです。
ここでは、メニューの「プロジェクト」「メイク」です。
- 600 名前:598 mailto:sage [04/03/05 12:14]
- 出来ましたどうもありがとうございます
- 601 名前:598 mailto:sage [04/03/05 12:42]
- またまたすいません。
今度は5章を飛ばして、6章に行ったのですが、 さっきは出なかった Error menu01.rc 4 11: Cannot open file: windows.h ** error 20018 ** deleting Release\menu01.res Make End !! (Elapsed time 0:02.829) というのが出てきてここから進めません。とりあえず、 menu01.cppがあるフォルダにIncludeフォルダの中のファイルすべてを コピーして<windows.h>を"windows.h"に変えたら出来たのですが・・・
- 602 名前:デフォルトの名無しさん mailto:sage [04/03/05 13:06]
- >>601
>>388-
- 603 名前:デフォルトの名無しさん mailto:sage [04/03/05 13:54]
- 俺はメニューの「プロジェクト設定」「リソース」「インクルードパス」
に、 〜\borland\bcc55\include を書いて対処した。 でも>>602のとおりかも
- 604 名前:デフォルトの名無しさん mailto:sage [04/03/05 17:21]
- >>602
ウインドウだけでメニューが出なかったんです、記述不足でした >>603 できました、ありがとうございます
- 605 名前:デフォルトの名無しさん mailto:sage [04/03/08 04:19]
- スレ違いかもしれませんが…。
Winアプリの開発環境(C++)の購入を検討中です。そこでBorlandユーザの皆様にお伺いしたいのですが、 C++Builderは、Visual C++.NETと比べて、書籍が少ないこと以外に、何かデメリットはありますでしょうか?
- 606 名前:デフォルトの名無しさん mailto:sage [04/03/08 04:58]
- >>605
C++Builder相談室 Part8 pc2.2ch.net/test/read.cgi/tech/1070222674/
- 607 名前:605 mailto:sage [04/03/08 07:33]
- >>606 ご親切にありがとうございますm(_ _)m そちらを覗いてみます。
- 608 名前:デフォルトの名無しさん mailto:sage [04/03/09 15:25]
- BCCで最新のPlatformSDK使える?
ライブラリがOMFじゃないから使えない気がする(というか無理だった) んだけど、その辺の解説してるリソースへのリンク等あれば教えてくだ さい。
- 609 名前:デフォルトの名無しさん mailto:sage [04/03/09 15:37]
- >>608
implibでDLLから作成 coff2omfで変換 好きな方選べ
- 610 名前:デフォルトの名無しさん mailto:sage [04/03/09 16:46]
- >>609
BorlandのCOFF2OMFは古い形式のCOFFしか対応してない(よね?)から 実質implibでDLLから作成するしかないか。 確かどっかでふつうにimplibしたんじゃ使えないような記憶があったんだ けど、どうなのかな? 結局VC使ってDLL作ってそこからLIB作らなきゃならなかったような…。
- 611 名前:デフォルトの名無しさん mailto:sage [04/03/09 22:45]
- TurboC++1.01のgraphics.h使ってみたのですが
警告 W8017 c:\Borland\Bcc55\include\graphics.h 12: マクロ '_Cdecl' の重複定義 エラー E2449 c:\Borland\Bcc55\include\graphics.h 244: 'far' のサイズが不明、あるいはゼロ ・ ・ ・ エラー E2228 c:\Borland\Bcc55\include\graphics.h 259: エラーあるいは警告が多すぎる 見たいな感じで使えません どうしたもんでしょう?
- 612 名前:デフォルトの名無しさん mailto:sage [04/03/09 23:00]
- TurboC++でコンパイルしろよ。スレ違いだし。
- 613 名前:デフォルトの名無しさん mailto:sage [04/03/09 23:07]
- >>612
あーいやgraphics.h入れれば使えるかなーと思いまして ほかのコンパイラ探して見ますね
|

|