タダで使えるBorland ..
281:デフォルトの名無しさん
04/10/29 23:08:45
情けない質問だと思うんですが
送られてきたDLのリンクが開かないんですけど・・・
>>89のページなんですが
開いたままいくらたっても表示されない・・・
どなたか教えてください
282:デフォルトの名無しさん
04/10/30 00:52:21
ブラウザじゃなくてダウンローダやFTPクライアントで落としてみたら?
283:デフォルトの名無しさん
04/11/10 18:20:10
環境変数を設定して、プログラムが終了しても設定されたままにするには
どうしたらいいんでしょうか? プログラム内で参照すると設定されてますが
プログラムが終わると消えてしまいます。
#include <stdlib.h>
main()
{
putenv("NULL=PO");
system("set");
}
284:デフォルトの名無しさん
04/11/10 23:12:47
>>283
レジストリに書き込む。ここで便乗して質問したいけど、
再起動無しで以降の起動プロセスに繁栄させる方法がわかんない。
285:283
04/11/11 00:18:25
>>284
コマンドプロンプトを起動するときに、レジストリの内容が
コマンドプロンプト内の環境変数領域に登録されます。
やりたいのは、コマンドプロンプトで起動されたプログラムから
コマンドプロンプト内の環境変数領域を書き換えたいんです。
だからレジストリに書くのは無しの方向で。
286:デフォルトの名無しさん
04/11/11 00:36:24
URLリンク(www.microsoft.com)
これとかじゃ駄目?よくわかんないけど
287:デフォルトの名無しさん
04/11/11 01:16:09
変数領域を書き換えた状態で子プロセスの起動じゃまずいのかな。
もしも親子じゃない別プロセスから環境変数のチートができたらセキリティの大穴で、
ディスク消去コマンドをcmd.exeにでもリネームしてパスを掛けられたらアウト。
288:283
04/11/11 01:27:07
>>286
だめだった。現在のプロセスでなく親プロセスのを変えられないと無理みたい。
289:283
04/11/11 01:33:04
>>287
あー、その絡みでできないようになってるのかな?
確かにコワイ。
290:デフォルトの名無しさん
04/11/12 14:02:54
すみません、どうかお助け下さい。
「猫でもわかるC言語プログラミング」という本を見て勉強しているのですが
あるソースをコンパイルしようとすると、以下のような文がでてコンパイルできません。
プロトタイプ宣言はしていますし、最後のエラーは意味すら分かりません。
一体どうすればよいのでしょうか?
-------------------------------------------------------------------
C:\borland>bcc32 type03.c
Borland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland
type03.c:
警告 W8065 type03.c 26: プロトタイプ宣言のない関数 'menu' の呼び出し(関数 main )
警告 W8065 type03.c 33: プロトタイプ宣言のない関数 'meibo_output' の呼び出し
(関数 main )
Turbo Incremental Link 5.00 Copyright (c) 1997, 2000 Borland
Error: 外部シンボル '_meibo_output' が未解決(C:\BORLAND\TYPE03.OBJ が参照)
-------------------------------------------------------------------
■エラーが出るソース
・「猫でも〜」のP234〜238のソース type03.c
URLリンク(49uper.com:8080)
■環境
・WinXP Home SP2
・Borland C++ Compiler 5.5.1
以下のページを参考にデフォルトの場所にインストールし、動作テストでエラーなし
URLリンク(www.m-n-j.com)
291:デフォルトの名無しさん
04/11/12 14:15:34
>>290
s/meido/meibo/
292:290
04/11/12 14:24:34
>>291
レスありがとうです。
えっと、すみません、それはどういう意味でしょうか?
293:290
04/11/12 14:41:47
ごめんなさい。>>291の意味は分かりました。ありがとうございます。
…恥ずかしい…
コンパイルはできたのですが、相変わらず
警告 W8065 type03.c 26: プロトタイプ宣言のない関数 'menu' の呼び出し(関数 main )
は出ます。もうちょっとソース眺めてみます。
294:デフォルトの名無しさん
04/11/12 14:53:19
ちょっと質問いいですか?
UNIX環境だと #include<eggx.h>のように指定すれば、グラフィックが
描けるじゃないじゃないですか。これをこのソフトで使いたい
んですが何かいい方法ありましたら教えてくださいませ。
295:290
04/11/12 15:25:03
報告です。
警告 W8065 type03.c 26: プロトタイプ宣言のない関数 'menu' の呼び出し(関数 main )
は調べてみたら分かりました。
URLリンク(wisdom.sakura.ne.jp)
プロトタイプ宣言を以下のように変更したら警告は出なくなりました。
× int menu();
○ int menu(void);
>>290のソースは削除します。
今回は解決しましたが、まだまだ分からないことだらけです。
スレ汚しすみませんでした。
296:デフォルトの名無しさん
04/11/13 04:23:34
>>293
C では int menu(); ではなく int menu(void); としないと
引数ゼロの関数を宣言したことにはなりません。
297:デフォルトの名無しさん
04/11/13 05:03:56
>>294
eggxそのものじゃないけどGrWinをためしてみては?
URLリンク(spdg1.sci.shizuoka.ac.jp)
298:283
04/11/13 19:16:21
いろいろ調べてみたけどわからなかった。
結局、プログラムでset文を実行するbatファイルを作って、
プログラム終了後にbatファイルを呼ぶようにしました。
スレ違い気味スマソ。
299:デフォルトの名無しさん
04/11/14 21:31:46
なんかプログラムを実行すると一瞬開いてすぐ閉じるんですが。
これ仕様でしょうか。初心者は動体視力を鍛えることから始めろって意味でしょうか。
300:デフォルトの名無しさん
04/11/14 21:36:27
とりあえず
getch();
を最後に書いてみれ。
何かキーを押すまで消えない。
301:デフォルトの名無しさん
04/11/14 21:40:29
>>300
なんか書く間もなく消えるんですが・・・
302:デフォルトの名無しさん
04/11/14 21:42:14
ソースにですよ
303:デフォルトの名無しさん
04/11/14 21:43:43
いや、なんていうか、それ以前に、コンパイラが一瞬で閉じるのでもうどうしたものかと
304:デフォルトの名無しさん
04/11/14 21:44:51
コマンドプロンプトから実行しろ。
305:デフォルトの名無しさん
04/11/14 21:46:09
・・・コンパイラはダブルクリックして使うものじゃないよ
勉強は「猫でもわかるプログラミング」で
306:デフォルトの名無しさん
04/11/14 21:47:53
・・・わかりました。初心者以前の問題だったようで、どうもすいません
307:デフォルトの名無しさん
04/11/14 21:50:57
ノシ<ガンガレ
308:デフォルトの名無しさん
04/11/15 17:22:14
borland系特有の方言とかってありますか?
309:本田
04/11/16 00:45:57
>>308
VCLを呼び出すための方言がある。
310:デフォルトの名無しさん
04/11/16 14:08:31
#pragma option pushもここだけじゃないか?
311:デフォルトの名無しさん
04/11/16 23:38:53
BC++でDLLファイルはどうやって作るんですか?
312:デフォルトの名無しさん
04/11/16 23:40:52
DLLファイル作る用のオプションを与える
313:デフォルトの名無しさん
04/11/19 18:29:42
URLリンク(usr_vogel.at.infoseek.co.jp)
314:デフォルトの名無しさん
04/11/20 12:02:25
bccはgccより最適化がpoorというのは本当ですか?
315:デフォルトの名無しさん
04/11/20 13:09:16
VCTKがある今となっては存在価値無いと思うが。。。
まだOpenWatocomのほうがマシだし
316:デフォルトの名無しさん
04/11/20 14:24:29
どうせうちのPCはVCTKを入れられない環境だよ…
317:デフォルトの名無しさん
04/11/20 14:30:08
お手軽な上に日本語なんで
十分存在価値はある。
318:デフォルトの名無しさん
04/11/20 17:10:53
再起動なしでインストールからコンパイルまで可能なんで
ネットカフェでプログラム作れるのはウマー。
サイズ小さいんで環境一式USBメモリでどこでもコンパイル。
319:デフォルトの名無しさん
04/11/21 21:42:27
落とせないのはなんでだろう。
320:デフォルトの名無しさん
04/11/21 21:45:20
>>318
ネットカフェで何を作ろうとしているのか、気になる。。。
321:デフォルトの名無しさん
04/11/21 22:40:31
キーロガー
322:デフォルトの名無しさん
04/11/22 10:57:42
323:デフォルトの名無しさん
04/11/22 19:43:46
作るよりダウンロードしたほうが早いだろう?
324:デフォルトの名無しさん
04/11/26 10:14:57
Cソースをコンパイルしてエラーが一つあったのだが
警告が出すぎてエラー原因が見えないのだが、警告表示を消すコンパイルオプションってある?
325:デフォルトの名無しさん
04/11/26 13:51:28
-w-
326:デフォルトの名無しさん
04/11/26 13:53:44
>>325
ありがとう
ご協力感謝する
327:デフォルトの名無しさん
04/12/08 01:04:05
bccでinclude通るねえよ糞ッたれ・・・
と思ってcpadに移行したらすんなり通ったバンジャーイ
328:デフォルトの名無しさん
04/12/08 05:56:21
インストーラがないと環境設定できない香具師多いなー
329:デフォルトの名無しさん
04/12/08 11:55:43
今時、「パス通せ」って言っても通じないからな。
それ以上に readme.txtを読むことも知らんし。
330:デフォルトの名無しさん
04/12/08 13:33:04
時代がちがうんだよ。
331:デフォルトの名無しさん
04/12/08 14:40:10
bcc55が古いのだ
332:デフォルトの名無しさん
04/12/08 18:58:58
setbccの後に再起動忘れてた orz
333:デフォルトの名無しさん
04/12/08 19:50:04
>>329
そんなんで良くコンパイラ使うきになるなー
時代がちがうたって意味わからん
おれはハードのことはわからんけど、ハンダごてで抵抗も
つけられない奴が、まともにハード設計できると思えんよ
そんな感じ
334:デフォルトの名無しさん
04/12/08 21:27:30
実験用具を自分で準備できない化学者みたいなもんだな。
335:デフォルトの名無しさん
04/12/09 00:20:06
「フーリエ変換」が積分だと知って驚く工学者かな
336:デフォルトの名無しさん
04/12/09 00:20:30
普通につかっててもパス通す機会なんてないからな。
337:デフォルトの名無しさん
04/12/09 22:57:31
文系SEってプログラミング知らなくてもソフトウェアの仕様決めてる人もいるんじゃないの?
338:デフォルトの名無しさん
04/12/09 23:21:21
>>334
良い例
>>335
悪い例
>>336
例になっていない
339:デフォルトの名無しさん
04/12/09 23:47:14
3番目は余計だったな
340:デフォルトの名無しさん
04/12/10 01:18:57
>>339
そんなことされると俺がオチになってしまう
341:デフォルトの名無しさん
04/12/22 17:13:57
STLport を使っている方いますか?
既に使っている人がいれば設定方法など教えてもらえませんか?
(Borland C++ 5.5.1 + BCC Developer, WinXP)
STLport 4.6.2 をダウンロード、解凍フォルダの stlport を
bcc32/Bin/bcc32.cfg のインクルードパスに追加してから、
make -f bcb55.mak すると「エラーE2268: 未定義の関数 '_vsnprintf'」でコンパイルに失敗.
STLport の iostream の使用を諦めて
stl_user_config.h で _STLP_NO_OWN_IOSTREAMS を有効にしてから、
#include <iostream> をインクルードすると、
「\stl/_alloc.h 341: 'allocator<_Tp>' と 'std::allocator<T>' の区別が曖昧」のエラーが連発,
解決のため _site_confit.h の _STLP_NO_OWN_NAMESPACE を有効にすると、
「\stlport\stl/_cwchar.h 87: 'mbstate_t' の宣言が複数見つかった」 など他多数のエラーが連発.
とうまくいきません。何か根本的に使い方を間違っているのでしょうか。
342:デフォルトの名無しさん
04/12/22 18:40:19
>>341
STLport本家のForumは読んでる?
BCC5.5.1は、STLport4.5.3までしか入らないよ。それ以降はサポートしてないと
公式にコメントが書かれている。
343:デフォルトの名無しさん
04/12/22 19:54:51
>>342
ありがとうございます、助かりました。
STLport4.5.3 を導入したら問題なくコンパイルも通りました。
4.6 は対応待ちですね。
344:デフォルトの名無しさん
04/12/22 20:44:47
待つんじゃない。君が対応させるんだ。
345:デフォルトの名無しさん
04/12/22 21:00:34
STLportは使ったことないけど、BCCにvsnprintf/_vsnprintf自体はあるからなんとかなるんじゃないか、と言ってみる。
346:デフォルトの名無しさん
04/12/22 22:14:55
>>345
STLportのソースやらmakefile一通り読んでみろよ。
「なんとかする」気力が失せるから・・・・
347:デフォルトの名無しさん
04/12/22 22:29:01
使いたい気持ち<なんとかする気力 なら仕方ないよね・・・
348:デフォルトの名無しさん
04/12/28 12:45:53
コンパイルできねー
349:デフォルトの名無しさん
04/12/28 13:01:40
URLリンク(www.borland.co.jp)
350:デフォルトの名無しさん
04/12/28 14:02:54
path設定してもbcc32.cfg作ってもilink32.cfg作ってもコンパイルできねー
351:デフォルトの名無しさん
04/12/28 14:16:51
ダブルクリックしてたら笑う
bcc32.cfg.txtが出来てたら笑う
352:デフォルトの名無しさん
04/12/28 15:20:41
笑えないと思うぜ
353:デフォルトの名無しさん
04/12/28 20:48:51
質問させてください。
>>203と同じ症状だったので、>>205のリンク先からlibファイルを落としてコンパイルしたら
コンパイラは通ったのですが、
完成したファイルを実行してみたところ、
「D3D9.DLLファイルがリンクしているエクスポートDDRAW.DLL:DdEntry21は見つかりません」
というエラーメッセージがでて実行できませんでした。
このような状況の対処方法をお教えください。
BCCでのDirectXプログラムについてわかりやすいサイトなどあわせてご教授願えれば幸いです。
354:デフォルトの名無しさん
04/12/29 00:48:07
URLリンク(goldfly.ld.infoseek.co.jp)
つか、BCCでDirectXは覚悟がいるし、調べ方も分からないなら
URLリンク(www.geocities.co.jp)
このへん使ったほうが幸せになれると思う。
開発停止してるけど、SimpleXあたりだとDirectX7レベルだったはずなので
何もせずに遊べるよ。中身は保証しないけど、導入だけなら
URLリンク(www.geocities.jp)
ここで充分かな…
がんばるなら、
URLリンク(bcb-tools.com)
ここから dinput1.lib と dinput2.lib を落としておくといいかも。
あとは implib の使い方だけ知っておけば、上記libと合わせて使うことで
Borland用のDLLをわざわざ用意しなくてもいろいろできるハズ。
355:デフォルトの名無しさん
05/01/02 20:35:59
回答ありがとうございます。
「調べ方も分からないなら」といわれてしまったので、少々気合を入れなおして
英語のサイトも覗いてみたのですが、とある質問サイトでまったく同じ内容の
エラーメッセージが出ているのを見つけました。
その件はどうやらグラフィックドライバをアップデートした上でdirectX9.0を
入れなおしたら治ったようです。
しかし、今プログラミングに使っているのは、2台持っているパソコンのうち
(壊れても惜しくない)古いほうであるためビデオカードも古く、ドライバのアップデートは
難しい状況です。
というわけで、あえてdirectX8でプログラムを組みなおしてみることを検討してみます。
356:デフォルトの名無しさん
05/01/05 12:02:01
ズバリ聞きますが、
BCCでNaNって使えないの?
double x = 0.0 / 0.0;
if((x) != (x)) {...
やると落ちるし。
printfでは"-NAN"って出るんだけどなぁ...
357:デフォルトの名無しさん
05/01/07 00:40:10
>>356
コンピューターは仕組み的に「○○をゼロで割る」ができません。
x!=xも意味わからんし、もっとまともなソースを書いてください。
358:356
05/01/07 09:44:28
>>357
まぁまぁ。
ちょいとこいつら見てくだせぇ。
URLリンク(e-words.jp)
「0で除算を行なったり、...言語処理系によってはエラーを発生させてプログラムを
中断するが、特殊な数値表現を結果として返し、処理を続行する場合がある。」
0で除算したときに落ちてないから「特殊な数値表現」を返しているんだろうとは思うけど...
あとココの14.9項。
URLリンク(lagendra.s.kanazawa-u.ac.jp)
359:デフォルトの名無しさん
05/01/08 09:53:02
>>356
IntelのFPUには control word というものがあって、その初期値が
BCとVCとで異なる。BCではゼロ除算で例外を発生するように初期化
されるが、VCではすべての例外はマスクされるために例外が発生し
ない。
BCで数値演算例外を発生しないようにするには、下のソースをコン
パイルして、実行したいプログラムとリンクすればよい。
#include <float.h>
void mask87exceptions(void)
{
_control87(0x1f,0x1f);
}
#pragma startup mask87exceptions
以上。
360:デフォルトの名無しさん
05/01/08 10:26:45
>>356
#include <stdio.h>
#include <float.h>
int main(){
double x = 0.0/0.0;
if((x) != (x)) {
printf("NaN(1)\n");
}
if(_isnan(x)) {
printf("NaN(2)\n");
}
printf("OK\n");
return 0;
}
…>>359使ってないけど落ちなかった。NaN(2)は表示された。
BCC 5.5.1 + Win2kSP4 にてテスト。
361:デフォルトの名無しさん
05/01/08 10:37:35
>>359t
俺も落ちなかったよ。
BCC5.6.4+WinXPSP2
362:デフォルトの名無しさん
05/01/08 19:08:35
>>360
ちょっと変えて、下のようにすると落ちる。これを防ぐにはやはり>>359 が不可欠。
#include <stdio.h>
int main() {
double x = 0.0 / 0.0;
if (x != x) printf("NaN != NaN\n");
else if (x == x) printf("NaN == NaN\n");
else printf("both (NaN == NaN) and (NaN != NaN) are false\n");
return 0;
}
363:356
05/01/08 20:52:27
おをを、なんか急にたくさんレスが...
>>359
早速試してみたところ、確かに落ちなくなったけど>>360さんの結果と同じく
x != x はfalseになった。まぁ _isnan() があったようなので問題はないと思われます。
それにしても詳しいですなぁ。「control word」なんて聞いたこともなかった。
...isnan()はないかなぁとincludeフォルダ内に検索かけて _isnan() を見つけて
使ってみたけどなんだったか良く覚えてないけどエラーが出てやっぱ使えないかとか
思ってたところで >>360 をコピペしたら動いちゃってあれはなんだったんだとかいう感じです。
今思うとあれは _isnan() の前にあった条件文がいけなかったのかもしれません。
でもとにかく皆さん説明と動作検証本当にありがとうございました。
364:デフォルトの名無しさん
05/01/09 02:18:46
>>353です。
DirectX8でプログラムを組みなおしてみたのですが、Direct3DCreate8が失敗するようなのです。
しかし、この関数の引数はマクロD3D_SDK_VERSION固定なのでどうしたものかと
大丈夫だろうかと思いつつも、無理やり適当に数字を突っ込んで見たところ、
引数に201をとったときに動くことが分かりました。
さて、ここで質問です。
Direct3DCreate8は引数に使うためにマクロが用意されているわけですが、
これを無視して数を放り込んでしまってもよいのでしょうか。
動くとはいえ。
365:デフォルトの名無しさん
05/01/09 16:12:29
d3d9.hを先にincludeしてるってことはないよね
極力無視しないほうが良ひと思ふ
366:353
05/01/17 09:41:12
続報です。
前述のように、うちには2台のパソコンがあり、プログラミングには古いほうを
使っているのですが、ある程度プログラムもできてきたので一度新しいほうでも
動かしてみようと思いやってみました。
しかし、またDirect3DCreate8が失敗するのです。
色々やってみたところ、新しいほうのパソコンは元のマクロを使わなければなら
ないようです。
というわけで、何が悪いのか分かりませんが、とにかく動くのでこのままいじっ
てみたいと思います
367:デフォルトの名無しさん
05/01/21 21:20:32
マルチスレッドのコンソールアプリのサンプルプログラムないですか?
368:デフォルトの名無しさん
05/02/01 19:16:55
VCのリリースビルドみたいなのは、BCCにもあるのでしょうか。
オプションで-Oとかありますが、それらがこれにあたるのでしょうか。
また正しいやり方があるなら、やり方を教えてください。
369:デフォルトの名無しさん
05/02/01 21:09:06
>>368
URLリンク(usr_vogel.at.infoseek.co.jp)
370:デフォルトの名無しさん
05/02/01 21:33:58
>>368
-vがデバッグ用のオプション
VCでのリリース時にしか最適化が有効にならないことなどまで気にするならmakefile作ってやれ。
デバッガを持っていないのなら意味無いけどね。
371:368
05/02/01 22:26:40
>>369-370
逆でしたか。
VCがデバックモードがデフォだから、
何かを付ける事で、リリースビルドが行われると思っていました。
ありがとうございました。
372:367
05/02/05 18:48:45
マルチスレッドでビープ音を鳴らすのを作ってみた。
どう?
unsigned __stdcall thr_beep(void *semh)
{
while (1) {
WaitForSingleObject(*(HANDLE *)semh, INFINITE);
fputc('\a', stderr);
}
}
void beep(void)
{
static HANDLE thrh = NULL, semh = NULL;
if (thrh == NULL) {
DWORD thrid;
semh = CreateSemaphore(NULL, 0, 1, NULL);
thrh = (HANDLE)_beginthreadex(NULL, 0, thr_beep, &semh, 0, &thrid);
}
ReleaseSemaphore(semh, 1, NULL);
}
373:デフォルトの名無しさん
05/02/06 00:25:45
説明するのも面倒なほど酷い
374:デフォルトの名無しさん
05/02/06 15:00:22
説明できるふりしても意味無いと思いますが ;-)
375:デフォルトの名無しさん
05/02/10 07:19:07
saaxaxaxa
376:デフォルトの名無しさん
05/02/11 01:33:33
エラーが出て、リソースリンクしてる?時にbrc32が落ちてしまいます。
あるときから突然brc32を使用できなくなりました。
ilink32.exeを実行中に落ちてるみたいなので、
bccを再インストールしてみましたが、変わりなく落ちてしまいます。
以下がそのときに表示されるエラーとその詳細です。
問題が発生したため、Turbo Incremental Linker を終了します。 ご不便をおかけして申し訳ありません。
AppName: ilink32.exe AppVer: 5.0.1.2 ModName: rlink32.dll
ModVer: 5.0.0.2 Offset: 000026d4
これが、brc32の実行中に出ます。
当方環境はPen4 XP bcc5.5です。
まだ必要な情報がありましたら書きます。
ご指導宜しくお願いします。
377:デフォルトの名無しさん
05/02/11 02:04:20
リソースにでかすぎるファイルがあるとか。
378:376
05/02/11 03:12:51
>>377
レスありがとうございます。
検証してみた結果、その通りであることが判明しました。
こんな時間にもかかわらずご指導ありがとうございました。
こんなミスに気が付かなかったなんて…Orz
逝ってきます。
379:デフォルトの名無しさん
05/02/15 19:08:43
質問させてください。(WindowsMeで、bcc5.5.1を使っています。)
sizeof(BITMAPFILEHEADER)の結果が14になるのは何故でしょうか?
4byteの境界調整が行われるなら、16になるかと思ったのですが、違いました。
そこで試しに、BITMAPFILEHEADER構造体とデータメンバを同じにした構造体を定義した、
以下のようなソースを書いてみたのですが、
#include <windows.h>
#include <iostream>
using namespace std;
struct AAA
{
WORD bfType;
DWORD bfSize;
WORD bfReserved1;
WORD bfReserved2;
DWORD bfOffBits;
};
int main()
{
cout << "sizeof(BITMAPFILEHEADER) = " << sizeof(BITMAPFILEHEADER) << endl;
cout << "sizeof(AAA) = " << sizeof(AAA) << endl;
return 0;
}
結果は
sizeof(BITMAPFILEHEADER) = 14
sizeof(AAA) = 16
となってしまいました。
380:デフォルトの名無しさん
05/02/15 22:11:47
>>379
sizeof(BITMAPFILEHEADER)の結果が
DIB(BMP)ファイルのフォーマットと違ったら困るだろ。
381:デフォルトの名無しさん
05/02/15 22:26:16
>>379
#pragma pack(2)
382:デフォルトの名無しさん
05/02/15 22:29:58
>>379
pragma pack
383:デフォルトの名無しさん
05/02/15 22:31:36
かぶった……
384:デフォルトの名無しさん
05/02/15 22:36:40
>>379
sizeof(BITMAPFILEHEADER)については、wingdi.h にて
#include <pshpack2.h>
と
#include <poppack.h>
で囲まれています。こいつがアラインメントを調整してまふ。
それが結果が違う"理由"
385:379
05/02/15 23:09:30
#pragmaは使ったことがなかったので、これからいろいろ調べてみます。
一度wingdi.hはのぞいたのですが、
#include <pshpack2.h>
#include <poppack.h>
が関係してるとは全然知りませんでした。
みなさんご回答ありがとうございました。
386:デフォルトの名無しさん
05/02/21 18:36:49
やり方わかんないです
教えてください
泣きそうです
1. freecommandlinetools.exe を実行します。無料の C++Builder 5
コマンドラインツール開発システムをインストールしたいドライブと
フォルダを選択します。
2. インストール先の bin ディレクトリで次の手順を実行します。
a. 既存のパスに "c:\Borland\Bcc55\bin" を追加します。
b. bcc32.cfg ファイルを作成します。このファイルは,Include
および Lib パスのコンパイラオプション(コンパイラの -I
および -L スイッチ)を設定するものです。ファイルには次の
行を含めてください。
-I"c:\Borland\Bcc55\include"
-L"c:\Borland\Bcc55\lib"
c. ilink32.cfg ファイルを作成します。このファイルは,Lib
パスのリンカオプションを設定するものです。ファイルには
次の行を含めてください。
-L"c:\Borland\Bcc55\lib"
387:デフォルトの名無しさん
05/02/21 18:38:04
そのままやれ
というか、どこでつまずいているのかを言え
388:デフォルトの名無しさん
05/02/21 18:40:44
はじめてパソコンいじるもので
全体的に意味がわかりません
389:デフォルトの名無しさん
05/02/21 18:41:47
>>388
猫見てやってみれ
URLリンク(www.kumei.ne.jp)
390:デフォルトの名無しさん
05/02/21 18:47:06
>>389 親切な人ですね。
でも初めてパソコンいじる奴がBCC使うのは無理があるような。
391:デフォルトの名無しさん
05/02/21 18:48:47
>>386
これならいけるかな?
URLリンク(www.vector.co.jp)
392:デフォルトの名無しさん
05/02/21 18:49:11
本当に親切にありがとうございました
393:デフォルトの名無しさん
05/02/21 18:52:41
>>389 やさしいのぅ
ちょっと使ってみるページは消えてたような気がするんで、ホレ
URLリンク(hp.vector.co.jp)
URLリンク(istb16.fc2web.com)
URLリンク(cgi16.plala.or.jp)
>>390
授業でぶっきらぼうな教授だったりすると、「使えるようにしとけ」と言うだけの場合もある。
そういう場合は、他の友人に聞けばいいことでもあるが、それが無理なときもあるのだろう。
使いたくない(使えない)のに使わざるをえない状況になっているのかも知れん。
394:デフォルトの名無しさん
05/02/21 18:56:30
>>389
>>390
>>391
>>393
みなさんありがとうございます
本当に助かります
2ch怖いとこだと聞きましたが
親切な方が多く感激しました
395:デフォルトの名無しさん
05/02/21 20:46:23
たまたまとても優しい方々がいただけだ。
他のところでも同じ調子でやってたらボロクソに扱われる可能性が高いと言う事を忘れないように。
396:デフォルトの名無しさん
05/02/21 22:50:11
スレ違いでしょうが
とりあえず質問させてください。
C++。
1 2 3 4 5[endl]
6 7 8 9 10[eof]
ってファイル(in.txt)があるとして、
1〜5までをintのarrayに入れる術ってありますか?
ifstream in;
in.open("in.txt");
int index = 0;
const int max = 50;
while((index < max) && bool(in))
{
in >> i;
array[index++] = i;
}
ってやったら、endlを無視しちゃうんです。
bool(in)がマズイんでしょうか?
charで取ってintに変換するとかしなきゃ無理でしょうか?
397:デフォルトの名無しさん
05/02/21 23:38:13
>>396
というか、>>入力演算子は、std::endlをスキップするだろ。ホワイトスペース文字だから。
398:394
05/02/21 23:49:36
すいません394です
またつまずきました
猫のところでやってるんですが
testをコンパイルしようとするところで
CDをやるとパスが見つからないという
表示が出ます。書いてある通りにやりました
よろしければご指導ください
399:396
05/02/21 23:51:38
>>397
そうなんです。
cin.get(char) みたいな感じで int, float ってとれないもんですかね?
1行目に数字が何個あるかも知らされない状態なので
index を指定することも出来ないんです。
後、↑↑の方法でファイルひらいてみたら
何故か index が11になりました。
何故かarray[10]が存在しました。
array[10]==10 で array[9]==10 です。()
なんかもうてんてこまいだ。
400:デフォルトの名無しさん
05/02/21 23:54:42
レスが互い違いになっちゃうけど
>>398
> この例では「CD "My Documents\MyProjectBCC\test"」とうちこめばよいです。
の通りに打ち込んだってこと?
ちゃんとカレントディレクトリの下にMy Documents\MyProjectBCC\testがあるかまず確認してみて
401:デフォルトの名無しさん
05/02/21 23:55:46
>>400
ありがとうございます
わかりました
確認してみます
402:394
05/02/22 00:02:33
>>400
今確かめたんですが
カレントディレクトリもHP通りに
\Documents and Settings\
になっています。
403:デフォルトの名無しさん
05/02/22 00:04:07
>>399
そういう時はstd::vector使え。
なお、1〜10まで読み込む方法は次の通り。
#include <iostream>
#include <fstream>
#include <algorithm>
#include <iterator>
int main()
{
std::ifstream in("in.txt");
int index = 0;
const int MAX = 50;
int array[MAX];
while (index < MAX) {
int i;
if (!(in >> i)) break;
array[index++] = i;
}
std::copy(array, array + index, std::ostream_iterator<int>(std::cout, " "));
std::cout << std::endl;
}
404:デフォルトの名無しさん
05/02/22 00:07:26
>>402
そうじゃなくて、Documents and Settingsというフォルダの中に
自分でMy Documents\MyProjectBCC\testというフォルダを作ったかどうかが知りたいの
「パスが見つからない」って「そんなフォルダありません」っていうことだから
あと、先に第4章のBCC Developerをインストールしちゃったほうがいいと思う
自分でフォルダ作らなくてよくなるから
405:デフォルトの名無しさん
05/02/22 00:09:52
ありがとうございます
わかりました
BCC Developerをインストールしてみます
406:デフォルトの名無しさん
05/02/22 00:12:40
ガンガレ
あと、>>404の前半に答えてちょうだい
原因合ってるか知りたいから お願い
407:396
05/02/22 00:26:32
>>399
ありがとうございました。
お蔭様でインデックスの方は出来てました。
vectorを知らないアホなので調べてきます。
ひょっとしたらまた来ます。
本当にありがとうございました。
408:デフォルトの名無しさん
05/02/22 02:13:05
>>406
すいません
フォルダは作りました
で、今BCCDeveloperやってたんですけど
環境設定のコンパイラの記入で
bcc32.exeとやってもできないです
どうしたらいいのでしょうか?
教えてください
409:デフォルトの名無しさん
05/02/22 02:16:19
右側の ... を押してフォルダを選択
410:デフォルトの名無しさん
05/02/22 02:17:45
なるほど!
すいません見落としてました!!
ずっとにらめっこしてたんですが・・・
411:デフォルトの名無しさん
05/02/22 02:18:58
フォルダというよりbcc32.exeを選択だった
デフォルトでインストールしたならC:\borland\bcc55\Bin\bcc32.exeにあるはず
412:デフォルトの名無しさん
05/02/22 02:33:58
すいません今度は
デバッカの位置がわかんないです
教えてください
413:デフォルトの名無しさん
05/02/22 02:37:54
C:\borland\bcc55\Bin\TD32.EXE
414:デフォルトの名無しさん
05/02/22 02:41:31
ありがとうございます
415:デフォルトの名無しさん
05/02/22 03:26:29
確認せずに>>413をコピペしただけか…まあ動くからいいか
416:デフォルトの名無しさん
05/02/22 09:48:23
あれからやったんですが
やっぱCDのところで詰まります
勘違いしてるかも知んないので
カレントディレクトリがsetting〜〜
なんですけどマイドキュメント等の位置関係はどうなっていればいいのでしょうか?
417:デフォルトの名無しさん
05/02/22 10:03:53
1回fseekしないとftellに反映されないんだけど何で?
#include <stdio.h>
int main(int argc, char **argv)
{
if (argv[1]) {
FILE *fp;
if ((fp = fopen(argv[1], "ab")) != NULL) {
printf("ftell=%ld\n", ftell(fp));
fseek(fp, 0, SEEK_END);
printf("ftell=%ld\n", ftell(fp));
fclose(fp);
}
}
return 0;
}
418:デフォルトの名無しさん
05/02/22 10:45:29
>>416
猫の第2章の「では、この時点でフォルダ類を確認してみましょう。」の下にある画像のとおりなんだが・・・
まずデスクトップのマイコンピュータをダブルクリック
そこから C:ドライブ→Documents and Settings→(ユーザ名) とフォルダをダブルクリック
(開いたフォルダ名が、フォルダの上のほうのアドレスバーの \ の後に追加されていく)
ユーザ名のフォルダが最初のカレントディレクトリ(猫の例だとC:\Documents and Settings\Yasutaka)
そこにある My Documents の中に右クリックの新規作成から MyProjectBCC というフォルダを作って、
さらにその中に test っていうフォルダを作ったのが My Documents\MyProjectBCC\test になる
コマンドプロンプトでも出来る作業だけど、Windowsでやるとこういうこと
ちゃんとフォルダを作っていれば CD できるはず
ちなみに My Documents はデスクトップのマイドキュメントと同一だからそっちから入ってもいい
で、BCC Developer はそのフォルダ作りとかコマンドプロンプトによる作業をしなくてよいようにしてくれる道具だから勧めました
だからもうコマンドプロンプトを起動しなくていいし CD もしなくていいです
C:\MyProjectBCC を作ってそこでプログラムを作ることにする(新規作成のディレクトリ名で C:\MyProjectBCC を選ぶ)
とマイコンピュータからダブルクリックで行きやすい
フォルダの階層構造がわかってない、とレスから判断したのでくどくど説明しちゃいました
そんなんわかってるよ!だったらごめんなさい
419:デフォルトの名無しさん
05/02/22 12:05:19
>>418
それが
開いたフォルダ名が、フォルダの上のほうのアドレスバーの \ の後に追加されていく
がならなくて
そこのフォルダの名前だけ表示されるんですが・・・
420:デフォルトの名無しさん
05/02/22 12:12:08
じゃあフォルダのツール→フォルダオプションで表示タブの「アドレスバーにファイルのパス名を表示」をチェック
でも重要なのはそこじゃなくて正しくフォルダを作ること
421:デフォルトの名無しさん
05/02/22 12:32:21
BCCのセットアップなら「猫でも」よりこっちの方が判りやすかろう。
URLリンク(ja2yka.homeip.net)
ここに書いてある通りにすれば取敢えず Hello worldまではたどり着けるはず。
あんまりグダグダが続くようだと、さすがに怖い2ちゃんねらーモードに入るぞ。
422:デフォルトの名無しさん
05/02/22 13:06:20
>>416
まあ何でもいいが、とりあえずOS情報(アップグレード版なのかどうかも)がないと MyDocument の
説明は非常に難しいように感じる。
#今の状況を見る限り、BCCDevで最初のプロジェクトを作ることすらままならないと思う
おとなしくメモ帳+コマンドプロンプトでいいんじゃね?
つーか、Hello Worldまでという条件なら星の数ほど解説サイトがありそうだ。
>>421
滅多にいない客人だ。またーり気長に行こう。
ここで詳しく丁寧に解決しておけば、次同じようなのが来ても、アンカー示すだけで済む
・・・はずなんだけどな(すでに過去スレに同じような質問もあるがここまでじゃなかったか・・・)
423:デフォルトの名無しさん
05/02/22 13:06:52
>>421
すいません
表示を変えたらちゃんと
C:Documents and Settings\My Documents\MyProjectBCC\test
となってました。
でもできないです。何か他に原因があるのでしょうか?
教えてください
424:デフォルトの名無しさん
05/02/22 13:14:51
>>423
いいかげんにしろこのヴォケ
「でもできないです。何か他に原因があるのでしょうか?」
おまえが何処で詰まってるか他人が判るわけないだろ。
何処で詰まってるのか具体的に説明しろ。
それが出来ないならもうあきらめろ。どっか逝け。
425:デフォルトの名無しさん
05/02/22 13:14:55
何をやろうとして、どういう作業をしたら、何というエラーが出たのか
過去に言ってるのかも知れないが、すでにいくつか問答を挟んでいるので現在どこまでできているのかが分からない
「CDのところで」などと言わず、入力した内容をそのままコピペすれば、また違った回答を得られる可能性はある
質問するときは入力内容の説明を省略しないほうがいい
426:デフォルトの名無しさん
05/02/22 13:19:22
>>422
コマンドプロンプトの扱いでつまづくよりは・・・と思ったんだが、余計な提案だったかな
しかし CD にこだわるのはコマンドプロンプトじゃなきゃいけない理由があるんだろうか
>>424-425
そうなんだよな・・・昨夜から質問に答えてくれなくて情報が少ないんだ
で、そもそも質問の意味がわからない段階なのかと思って>>418を書いたし、
そもそもコマンドプロンプトじゃなくてもいいよ、と言ったんだが
427:デフォルトの名無しさん
05/02/22 13:23:03
すいません
C:¥Documents and Settings\(ここは伏せます)>CD"My Documents\MyProjectBCC\test"
指定されたパスが見つかりません。
何度も上のように表示されます。
アドレスは
C:Documents and Settings\My Documents\MyProjectBCC\test
なので正しくフォルダを作れてると思います
428:デフォルトの名無しさん
05/02/22 13:24:49
>>426
BCCDeveloper
もつまずいてしまってできなかったです
429:デフォルトの名無しさん
05/02/22 13:25:02
さすがにGUIでのディレクトリ操作すら満足に出来ない奴に
プログラミングは無理。
もし学校の課題がらみなら出来る友人に泣きつけ。
ここで、これ以上問答しても無駄。
430:デフォルトの名無しさん
05/02/22 13:25:40
>>427
CDの後にスペース入れろよぉぉぉ
431:デフォルトの名無しさん
05/02/22 13:28:27
>>428
じゃあちゃんとその旨言ってくれ
なんでいまだにCDにこだわってるのか不思議だった
432:デフォルトの名無しさん
05/02/22 13:30:32
>>430
スペース入れてもだめでした・・・・
433:デフォルトの名無しさん
05/02/22 13:38:55
1.コマンドプロンプト開いて「CD(スペース)」と入力した状態でいったん放置。
2.エクスプローラで移動したいフォルダを表示させ、
それをコマンドプロンプトにD&D。
3.コマンドプロンプト側の「CD 」の後ろにパスが表示されているのを確認して
Enterキーを押す。
434:デフォルトの名無しさん
05/02/22 13:39:11
単なる書き忘れだと思ってたんだが
C:Documents and Settings\My Documents\MyProjectBCC\test
って Documents and Settings の直下に自分で My Documents ってフォルダ作ってたりしてない?
435:デフォルトの名無しさん
05/02/22 13:40:11
>C:\Documents and Settings\(ここは伏せます)>CD"My Documents\MyProjectBCC\test"
>C:Documents and Settings\My Documents\MyProjectBCC\test
どう考えてもおかしいような。アドレスが
C:\Documents and Settings\(ここは伏せます)\My Documents\MyProjectBCC\test
でないとダメだろうと思う俺は何か間違っているだろうか。
436:デフォルトの名無しさん
05/02/22 13:40:28
>>432
おそらく
CD "..\My Documents\MyProjectBCC\test"
しかしいずれにせよ今の君には>>429だわな。
437:デフォルトの名無しさん
05/02/22 13:41:57
盛大にかぶったなw
438:デフォルトの名無しさん
05/02/22 13:42:09
>>433
それ知らなかった
全角文字が入ってるフォルダにも行けて便利だな
439:デフォルトの名無しさん
05/02/22 13:44:49
>>423でうっかりだと解釈してスルーしちゃったのがいけなかったか
440:デフォルトの名無しさん
05/02/22 13:47:29
みなさんすいません
>>432さんのでできました。
とりあえず先に進んでみます
441:デフォルトの名無しさん
05/02/22 13:49:34
ありがとうございました
442:デフォルトの名無しさん
05/02/22 13:50:11
ガンガレ
443:デフォルトの名無しさん
05/02/22 13:56:07
第2章までできました
ありがとうございます!!
444:デフォルトの名無しさん
05/02/22 13:56:52
だから、実際にどういうフォルダ構成にしてたのかとか報告して欲しいんだよ
それって質問したときの礼儀だよ
445:デフォルトの名無しさん
05/02/22 14:00:45
すいません
Documents and Settingsの下に
直下で作ってたっぽいっす
446:デフォルトの名無しさん
05/02/22 14:10:12
オツカレ
447:デフォルトの名無しさん
05/02/22 14:22:06
本当にありがとうございました
いま冬休みなんですが
部活とバイトの合間にこのようにやっているので
大学の友人たちに見てもらう暇がなかったんで
ほんとうにたすかりました。
448:デフォルトの名無しさん
05/02/22 14:27:06
メールとかメッセ使えばよくないか?
449:デフォルトの名無しさん
05/02/22 14:32:49
仲間内は皆バイトで・・
2chならむちゃんこ詳しいひといまくりで
まじ勉強になるってきいたもので
今回きました。
450:デフォルトの名無しさん
05/02/22 14:45:58
ごめん、今頃イライラしてきた。
451:デフォルトの名無しさん
05/02/22 14:57:01
あとdirコマンドくらい覚えとけな
452:デフォルトの名無しさん
05/02/22 15:50:37
まじで「教えてクン養成塾」になりつつあるな。
おまいらいくら暇でも相手をよく見て対応しろよ。
453:デフォルトの名無しさん
05/02/22 17:48:20
スマンカッタ
454:デフォルトの名無しさん
05/02/22 17:55:21
”むちゃんこ詳しい”だけに初心者の質問とつまづいてるところがわからないんだよな
My Documentsを自分で作っちゃうとか、書いてる通りにやってると思うから予想だにしないし
455:デフォルトの名無しさん
05/02/22 18:02:46
>>449
学生さんなら悪いこと言わんから樋口一葉1枚出して
Visual Studio の theSpoke 版買ってきた方がいいよ。
ちゃんとしたGUIの開発環境が付いてて、解説書も山ほど有るから。
456:デフォルトの名無しさん
05/02/22 18:08:33
大学生で教えて君か…(´∀`)
何のために入ったの?
457:デフォルトの名無しさん
05/02/22 19:44:02
>>455
BCCを強要されてるのかもしれんぞ。
ものすごく良心的に解釈したとしたらだが。
それにしてもプログラミング以前のことが分かってなさすぎ。
458:デフォルトの名無しさん
05/02/22 22:42:28
大学図書館でMS-DOS関連の初級本を借りてななめ読みすれば
使うだけならできるようになるんじゃないかなあ
コマンドプロンプトを使うなら、それなりに役立つと思うよ
とりあえず、分かってないってのは本人も分かってるだろうから、
学習の方向性だけってことで
459:デフォルトの名無しさん
05/02/22 22:48:47
とりあえずここの住人が滅茶苦茶に優しく温厚だということが分かった。
正直こんな流れは始めて見た。
460:デフォルトの名無しさん
05/02/23 00:34:38
俺のせいかな
461:デフォルトの名無しさん
05/02/23 01:03:11
誰だ貴様
462:デフォルトの名無しさん
05/02/23 01:18:14
次の質問者を生贄にすればまたやさしくなれるさ
463:デフォルトの名無しさん
05/02/23 01:34:20
要は回答する方も教えたがり厨。
回答者がうだうだ要らん事書いてるから余計話が混乱している。
最初から、質問者に「説明が足らん」ってレスしてりゃ良かったんだよ。
464:デフォルトの名無しさん
05/02/23 01:48:32
すまんかった
465:デフォルトの名無しさん
05/02/23 01:55:30
有益な情報ばかりを選定していると、確かに質は上がるかも知れないけど
アイデアが減っちゃう...知識よりも知恵を貯めていきたいところ
>「説明が足らん」
は同意、反省点ですね
466:デフォルトの名無しさん
05/02/23 06:49:53
>>417
appendモードで開いたとき、ファイル位置の初期値がファイルの先頭に来るか
最後に来るかは実装に依存する(規格 7.19.3)。
467:デフォルトの名無しさん
05/02/23 07:08:06
>>396
1行ぶんのデータを得るならcharの配列lineにいったん読みこんでistringstream
に入れ、そっちから読みこむ。
char line[1000]; in.get(line,1000);
istringstream is(line);
while (is>>i) {...}
468:デフォルトの名無しさん
05/02/23 07:09:01
GUIだけでって場合でも環境変数とかの知識はある程度必要だろうし、
|やsetや簡単なbatファイル作れる程度の知識はC/C++共に必須
でないのか。
これわからんのだったら当然getenvやらarg argvやらも理解で
きてないってことだと思うし。
簡単なbat組めなきゃ、ERRLEVELも・・・・
・・・と俺もまだまだ薄識なんだが、そう思うんだよね。
で、便乗質問なんですが、WINの場合だけですか。
ドライブの移動用の関数があるのは。
469:デフォルトの名無しさん
05/02/23 09:14:00
>>468
Winのみというか、WinのはDOSの関数をエミュレートしてるだけでは?
WinAPIにはSetCurrentDirectoryひとつしかないはず。
470:デフォルトの名無しさん
05/02/23 18:57:07
>>469
#include <dir.h>
int chdir(const char *path);
int _wchdir(const wchar_t *path);
解説
カレントディレクトリを変更します。
chdir は,path で指定したディレクトリをカレントディレクトリにします。path は,実際に存在するディレクトリでなければなりません。
path 引数内には,次のようにドライブ名も含めることができます。
chdir("a:\\BC")
ただし,これはそのドライブ上のカレントディレクトリのみを変更します。カレントドライブは変更しません。
Windows 環境の下では,この関数はカレントプロセスにのみ影響を与えます。
DOS 環境の下では,この関数は親プロセスのカレントディレクトリを変更します。
次ページ最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
4661日前に更新/215 KB
担当:undef