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


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

スレを勃てるまでもないC/C++の質問はここで 10



1 名前:デフォルトの名無しさん mailto:sage [2009/05/14(木) 20:35:36 ]
スレを勃てるまでもない低俗なC/C++の質問はここでお願いします。

過去ログ
スレを勃てるまでもないC/C++の質問はここで
pc11.2ch.net/test/read.cgi/tech/1167476845/
スレを勃てるまでもないC/C++の質問はここで 2
pc11.2ch.net/test/read.cgi/tech/1178503366/
スレを勃てるまでもないC/C++の質問はここで 3
pc11.2ch.net/test/read.cgi/tech/1187521676/
スレを勃てるまでもないC/C++の質問はここで 4
pc11.2ch.net/test/read.cgi/tech/1221633708/
スレを勃てるまでもないC/C++の質問はここで 5
pc11.2ch.net/test/read.cgi/tech/1230516307/
スレを勃てるまでもないC/C++の質問はここで 6
pc11.2ch.net/test/read.cgi/tech/1231564903/
スレを勃てるまでもないC/C++の質問はここで 7
pc11.2ch.net/test/read.cgi/tech/1232983248/
スレを勃てるまでもないC/C++の質問はここで 8
pc12.2ch.net/test/read.cgi/tech/1235921779/
スレを勃てるまでもないC/C++の質問はここで 9
pc12.2ch.net/test/read.cgi/tech/1240022781/

411 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 11:39:14 ]
すいません、質問です。
アマゾンで古本を販売していて
販売価格を簡単に改定できるソフトを探しています。
改定ソフトは.netフレームワークでプログラムが作られてるようなのですが
プログラミングの知識がまったくない素人が売ってるのを購入せず
同じようなものを作るにはどれぐらいの時間がかかりそうですか?

プログラム自体はアマゾンサイトから価格データを集めるのがメインで
それほど難しくなさそうに見えるのですが。(素人なので直感です)

価格改定ソフトの一例です
ttp://6plan.net/amazonpricechecker

やっぱりめちゃくちゃ難しいんですかね?

412 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 12:01:41 ]
>>411
とりあえず君のプログラミングスキルを教えてくれ。
ここはC/C++スレだからC/C++のスキルに関しても。


413 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 12:06:15 ]
>>412
すいません、プログラミング知識はゼロです。

コンピュータ用語がわかる程度
良く言ってシスアドレベルだと思います。

414 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 12:08:47 ]
>>413
0からだと果てしなく険しいと思う。
少なくともC/C++でやるなら相当苦労しそうだ。

他の人の意見も聞きたいところだけど、
やるにしてもせめて初心者にやさしい超高級言語で挑戦したとして
果たして何ヶ月かかるだろうか。。。

415 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 12:15:27 ]
プログラムの取得にかかる時間は個人差がある。
独学ならなおさら。

半年で5つの言語を習得してプログラミング言語自体を作ってしまう高校生もいれば、
いくら頑張っても途中で挫折する人間も大勢いる。

416 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 12:18:48 ]
>>415
>半年で5つの言語を習得してプログラミング言語自体を作ってしまう高校生もいれば、
だれ?

417 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 12:44:48 ]
>>411
業務時間内に作ろうと思ってるならやめた方がいい
よほどの天才じゃない限り買った方が安い

418 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 12:52:16 ]
>>415-417

レスありがとうございます。
それほど難しいものなんですか。
おとなしく製品を購入することにします。

ちなみにシスアド程度の素人がプログラムを楽しもうと
思う場合、ExcelとかのVBAなら比較的簡単に習得できるものなんですか?
あくまでも趣味程度しか時間はさけませんので。

419 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 13:16:37 ]
極端な例を出して話をはぐらかすやつって馬鹿なの?



420 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 15:04:51 ]
char x1,x2;としてこれをwhileで繰り返し、if文でx1==x2の判定をしながら、
文字列のランレングス符号化をしたいです。
どう書けばいいでしょうか?

421 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 18:59:17 ]
グローバル変数と性的変数ってどっちのほうがメモリ容量多く使うのでしょうか?
また、staticを何個も書くのはまずいですか?

422 名前:デフォルトの名無しさん [2009/05/30(土) 19:00:00 ]
静的変数の間違いでした。

423 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 19:25:54 ]
>>421
たいていの場合、グローバル変数とstatic変数は同じ扱いになる
static変数を何個も書くこと自体は問題ない。
性能面、安全面で自動変数より劣ることはあるかもしれない。

424 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 19:32:11 ]
グローバル変数のほうが、シンボル情報がオブジェクトファイルに含まれるので
.objなり.oなりが大きくなる

と全然意味の無いことを言ってみる

425 名前:デフォルトの名無しさん mailto:sag [2009/05/30(土) 19:43:53 ]
ヘッダーファイルの値をいくら変えても反映されません。
どうやらパソコンを起動してから最初に実行した時の値が以後ずっと使われているようです。
PCを変えて実行してみましたが、同じ不具合が発生しています。
原因がわかるかたいませんか?

426 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 19:53:43 ]
日本語でおk

427 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 20:02:01 ]
説明しようにも不具合の原因がわからなすぎて、上手く説明できません。

ソースファイルの更新はしっかり反映されるのに、ヘッダーファイルの更新は最初の一度しか反映されないのです。

428 名前:デフォルトの名無しさん [2009/05/30(土) 20:05:58 ]
その.hをincludeした.cで printfしてみれ
それでも反映されないのなら、コンパイラのバグじゃね

429 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 20:14:43 ]
どうやら値事態はしっかり反映されているようです。
しかし、その値と変数を比較する部分が正しく動作しません。
友人と全く同じプログラムですが、実行結果が違います。(アカウントは違います。)



430 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 20:20:44 ]
ヘッダーを書き換えた後にそれをインクルードしているソースはコンパイルしなおしているよな?
一応OSと環境(VC++とかgccとか)よろ

431 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 20:20:56 ]
学校の課題は先生に訊きなさい

432 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 20:24:59 ]
複数あるソースファイルのうち、その比較部分があるファイルにprintf文をつけたところ、値の比較が正しく行われるようになりました…。
当然、友人らはこのソースファイルには手をつけなくても正しく動作しています。
全くもって理解不能です。

433 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 20:32:11 ]
こんな言葉がある
『プログラムは思ったとおりに動かない。書いたとおりに動くのだ』

434 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 20:37:43 ]
printf文をつけることで関係無い部分が正しく動くようになったのですよ。
理解不能(^q^)

435 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 20:41:57 ]
>>430の言ってることが答えな気がする
printf文を加えたソースファイルをコンパイルしなおしたことでヘッダファイルの変更が反映されたと

436 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 20:47:47 ]
>>435
別のソースファイルにつけたときは正しく比較部分が正しく動かなかったです。
(ヘッダーで設定した数値は正しく表示された)

日本語が不自由ですみません。

437 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 20:58:48 ]
そんなときにはソリューションのクリーン→ビルド

438 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 21:11:50 ]
>>436
いやだから、別のソースファイルの時は今回直したソースファイルをコンパイルしなおしていないんじゃないか?ってこと

439 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 22:44:16 ]
とりあえず環境、ヘッダとかのファイル名と実行したコマンドを書け。



440 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 23:53:16 ]
C言語の質問です。お願いします。
{
int i;
char ch;
scanf("%d", &i);
printf("%dです。\n", i);
scanf("%c", &ch);
printf("%cです。\n", ch);
return 0;
}
というプログラムを実行し例えば4と打つと
4
4です。

です。
と表示されてしまいます。
何故、scanf("%c", &ch)は無視されるのでしょうか?
4
4です。
s
sです。
と言った具合に表示させたいです。

441 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 23:59:06 ]
www.google.co.jp/search?q=scanf+%89%FC%8Ds%95%B6%8E%9A

442 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 00:01:12 ]
virtualってつけれるところは全部つけとけばおkなんですか?

443 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 00:12:38 ]
>>440
4の次に入力された改行文字が、2回めのscanfで読み込まれるから。
scanf("%d%*c", &i);
のようにして、改行文字を1回めのscanfで読み込ませればいい。

444 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 00:21:25 ]
>>441
>>443
ありがとうございました。
おかげさまで解決しました。

445 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 00:25:31 ]
>>442
副作用としては、
・オーバーライドするつもりのない関数を間違ってオーバーライドする可能性がある
・多分、メモリ使用量が幾分増える
ってのがある。

446 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 03:57:21 ]
Cの乱数をsrandとtimeを使って毎回違うようにするのは
わかったのですが、二つの乱数をほぼ同時に出す場合、どうすれば
その二つの乱数をバラバラにする事ができますか?

具体的には戦闘ゲームなのですが、
コチラの攻撃が1~30までで、相手も1~30までの値で
攻撃してくるときに、1~30までの値を返す関数を
srandで初期化してrand()%30+1の値を返すという風に作りました。
しかし、自分の攻撃値も上の関数でけっていし、それにほぼ同時
(すぐ次の行で)相手の攻撃値も決定しているのですが、そうすると
どうしても自分の攻撃値と相手の攻撃値が同じになってしまいます。
時間がほぼ同時ぐらいのタイミングで処理するとどうしても
このようになってしまうと思うのですが、どのようにすれば別々の値に
できるでしょうか?よろしくおねがいします。

447 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 04:04:51 ]
srandで初期化するのは、プログラム中1回だけでいい。

面倒なら、srand呼ばないようにすればとりあえずランダムな値は取れる。

448 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 04:16:45 ]
同じだったらもう一回randすればいいんじゃないの

449 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 04:30:35 ]
乱数シードに IP アドレスとかプロセス ID とかを加算
てか同じプロセス内のコードか??? なら初期化は一回だけであとは rand を呼べばいい



450 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 05:18:53 ]
質問なのですがお願いします。
c++、bccを使用しています。

char si[1000];
char sj[1000];
cin>>s1;
cin>>s2;

と二つの配列を作って、こんぱいる実行したら

「_             」

とうまく入力待ちになりました。しかし、

char si[1000];
char sj[1000];
cin>>s1;
cin>>s2;
array[1000][1000][5];

では、


 c:\bcc\test>      」

と表示されて、たぶん実行終了した状態になるのですが、
原因を教えてくださいませんでしょうか?おれがうんこなのでしょうか?

451 名前:450 mailto:sage [2009/05/31(日) 05:20:12 ]
全力で間違えました。

char si[1000];
char sj[1000];
cin>>s1;
cin>>s2;
int array[1000][1000][5];

でうまくいかないのでしあt

452 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 05:23:32 ]
領域確保しすぎてスタックオーバーフロー?
配列をグローバルにしてみよう

453 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 05:24:01 ]
>>451
>int array[1000][1000][5];

これ単純に大きさを計算したら1000×1000×5×4=約19MBとなって
スタックのデフォルトの大きさ1MBを超えるから異常終了する

スタックを大きくするかstaticを付けてBSSに配置するかだな

454 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 06:35:37 ]
Visual Studio 2005 Proですが
array<String^>^ getFilterName_St();
Bitmap^ sample_grab();
Bitmap^ sample_grab2(Bitmap^ bmp);
こういう書き方って、.NET対応CLIの実装ですよね、NativeなC/C++では使えないコードですよね。


455 名前:デフォルトの名無しさん [2009/05/31(日) 08:37:19 ]
うん

456 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 09:06:28 ]
>>455Thx分かりました。
.NETのCLIって、C/C++のコードも混在することができるんですね、templateや関数オブジェクトがすらすら書けない俺には無用なものですね。

457 名前:450 mailto:sage [2009/05/31(日) 11:42:01 ]
ありがとうございました。
mainの外に追い出したところ、何とか起動しました。
途中で強制終了されたけど。。。なんかでかい配列を扱うのはすごく大変ですね。

ありがとうございました!

458 名前:デフォルトの名無しさん [2009/05/31(日) 13:25:55 ]
ある動的配列の要素全てが0以下である
をループを抜ける条件としたいのですが、何か良い方法はありますか?

今はforで要素全てを判定させて、全て0以下なら
変数aを1、このaが1ならループを抜けるとしています

459 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 13:47:38 ]
O(n)未満の方法はないんじゃないかな
なのでその方法がベスト
もし、STLに関数型言語のforallやexistsのようなものがあれば
記述的に楽は出来るだろうが
やる計算的には>>458の方法と同じになるし



460 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 13:49:41 ]
Pstade.Ovenライブラリを使って

oven::forall(xs, _1 <= 0)
を終了条件にすればいい

ただしxsは対象である動的配列の型で、かつ
xsの型がsingle pass rangeのコンセプトを満たす必要がある
vectorやlistはこのコンセプトを満たす

461 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 13:52:40 ]
>>458
それでいいんじゃないの?

あまりにも大量のデータを頻繁にチェックするというのなら、
配列に書き込む時点で値が0以下かどうかチェックするという方法もあるけど。
(配列への書き込みが大量に発生するようだと、これも効率的でなくなるが)

462 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 13:58:53 ]
while( !isAllNegative(array, size) ) 〜;

isAllNegative(int *array, int size){
    for(int i = 0; i < size; ++i)
        if(array[i] >= 0)
            return false;

    return true;
}

463 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 14:00:15 ]
ああ、そのほうが良いな。アホだった
あと、そのプログラム、条件>=じゃなくて>にしないと

464 名前:458 [2009/05/31(日) 14:31:22 ]
ありがとうございます!
全部試してみますね

465 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 16:34:51 ]
他人の作ったクラスを継承するのって危険ですかね?

466 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 16:37:52 ]
継承する想定で設計しているならそうでもないんじゃないの。
まぁ作った奴のスキルがどれだけ信用できるかだが。

467 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 16:56:40 ]
自分で定義したクラスでも意識してないと
Liscov Sutstitution Principleは簡単にぶっ壊れるのになにをかいわんやだ

468 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 17:06:56 ]
プライベート継承しただけで壊れるんだっけ

469 名前:デフォルトの名無しさん [2009/05/31(日) 17:09:19 ]
女でプログラマは何割くらいいますか?



470 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 17:32:53 ]
一割いないね。

471 名前:デフォルトの名無しさん [2009/05/31(日) 17:42:00 ]
トンクス 

472 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 17:42:25 ]
女でプログラマで美人で性格いい人は何割ぐらいいますか?

473 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 18:55:38 ]
本当に人口の半分は女なのか疑わしくなってくる

474 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 18:59:10 ]
女優遇社会だからな。酷い男社会とは別の贅沢な環境で生活してるんだよ。

475 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 19:06:42 ]
主夫になりたい

476 名前:デフォルトの名無しさん [2009/05/31(日) 19:18:18 ]
前にも質問したんですが、メモリをファイルに見せかける方法か、
ramディスクを動的に生成する方法ありますか。

477 名前:デフォルトの名無しさん [2009/05/31(日) 19:21:25 ]
DOSコマンドでファイルへ出力するものを直接メモリに入れたいのですが。無理でしょうか。
標準出力ではなく、ファイルへの出力の場合です。

478 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 20:06:40 ]
mmapとか、MapViewOfFileとか、その辺を調べるといいかも。

ただし俺だったら出力関数にファイルに出力するかメモリに書き込むかを
指定するフラグをつけるけどな。

479 名前:デフォルトの名無しさん [2009/05/31(日) 20:08:14 ]
>>476
メモリマップドファイルというのがある
それ専用のWindowsAPIがあるから、他でもOSレベルのAPIがあるんじゃね



480 名前:デフォルトの名無しさん [2009/05/31(日) 20:12:08 ]
ファイルをメモリのように扱うのではなく、
メモリをファイルのようにしたいのですが。
メモリを借りてきて、Zドライブを作るとかです。
普通のドライブのようにアクセスする方法はないですか

481 名前:デフォルトの名無しさん [2009/05/31(日) 20:14:51 ]
えっ

482 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 20:14:55 ]
---hoge.h---
class Hoge{
public:
メンバ関数;
private:
void *mMember;
};
-----------
--hoge.cpp--
namespace{
struct Member{hoge hg}; //コンストラクタでmMember = (void *) new Member; アクセスは(Member *)mMember
privateメンバ関数の代わりの関数;
}
メンバ関数;
-----------
めんどくさそうだけど、カプセル化にこだわるならこんな感じのほうがいいんでしょうか?

483 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 20:18:54 ]
>>480
RAMディスク Windows
とかでぐぐれ。

484 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 20:21:30 ]
>>482
こだわるならそんな感じだけど、そこまでこだわる必要があるケースは稀。

485 名前:デフォルトの名無しさん [2009/05/31(日) 20:21:33 ]
RAMディスクをプログラムが動いているときだけ生成して、終了したら解放する方法はないですか?
既存のDOS EXEで、出力がファイルのやつを直接メモリに格納して高速化したいです。

486 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 20:25:52 ]
RAMディスクつくるソフトを制御して
起動時にRAMディスク作らせて、終了時にRAMディスク開放させればいいのでは?

487 名前:デフォルトの名無しさん [2009/05/31(日) 20:29:44 ]
汎用性がある方法はないですか
ソフトをインストールしてもらわないと出来ません

488 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 20:40:26 ]
単に、バーチャルなファイルシステムをかますだけでしょ。作った方が早い

489 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 20:43:05 ]
USBカメラから画像を取り込みたいんですが、よくあるUSBカメラを使うソフト
とかってどうやってるんでしょうか?



490 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 20:58:48 ]
既存のDOS EXEって何よ?

491 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 21:14:14 ]
>>489
USBカメラがそうなっているかは分からんが、TWAINという共通化インターフェースがある

492 名前:デフォルトの名無しさん [2009/05/31(日) 21:19:51 ]
カプセル化という物を勉強したのですが、一度しか使わない計算でも
関数を定義して別ファイルに値を渡し、戻り値をmainに渡すようにしたほうがよいのでしょうか?


493 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 21:22:02 ]
ありがとうございます。TWAIN初めてききました
直接カメラのドライバをたたいてるのかと思ってたけど、こんな便利なのがあったんですね

494 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 21:34:23 ]
>>492
必要に従いカプセル化する。何でもかんでもカプセルにして密閉化すると。
オブジェクト指向原理主義者になるw

495 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 21:39:04 ]
>>492
突き詰めると決着が付かないような議題
個人的にはほんの数行(最大4行ぐらい)で、そこでしか計算しないんだったら埋め込む
ただ
>関数を定義して別ファイルに値を渡し、戻り値をmainに渡す
が何を言ってるのかがわからなくて心配

496 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 21:51:10 ]
>>492
それはカプセル化というよりはリファクタリングに関係してるように思う
俺の場合、ある処理を2回行うようになった時点で関数化する
逆に1回しか使う場所がないのに無駄に抽象化した関数は定義しないようにしている
C++の抽象化能力では、これは常に出来ないのは若干悩みの種

カプセル化は、ライブラリのように
他人もそのコードを使うケースで意識すればよいと思う

497 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 21:54:50 ]
>>477
出力ファイル名にCONを指定して標準出力へ出せるようにならない?
それで動くなら、あとはリダイレクトできるでしょ。

498 名前:デフォルトの名無しさん [2009/05/31(日) 22:01:18 ]
>>494-496
ありがとうございます
一人だから問題ないのですが、逆に指摘してくれる人がいないのが難点です


499 名前:デフォルトの名無しさん mailto:sage [2009/06/01(月) 00:08:32 ]
スタイルの問題で答えはないと思うけど、マクロってインデントするべきかな?

#ifndef CLASS
 namespace Name
 {
  class Class
  {
  public:
   foo bar();
   #ifdef _DEBUG
    hoge fuga();
   #endif
  }
 }
#endif

#ifndef CLASS
namespace Name
{
 class Class
 {
 public:
  foo bar();
#ifdef _DEBUG
  hoge fuga();
#endif
 }
}
#endif

悩む・・・



500 名前:デフォルトの名無しさん mailto:sage [2009/06/01(月) 00:26:03 ]
#ifndef CLASS
なんたらかんたら
# ifdef _DEBUG
なんたらかんたら
# endif /* _DEBUG */
なんたらかんたら
#endif /* CLASS */
とやるのが普通かな。

プリプロセッサディレクティブは、行の先頭を#で始めなければならない。
規格のどのセクションだったかもう覚えてないけど。

フリーソフトウェアのソースを読んで勉強したら良いかもしれない。

501 名前:デフォルトの名無しさん mailto:sage [2009/06/01(月) 00:53:26 ]
そう?
手元のANSI C言語辞典には#の前に空白類があってもよいと書いてあるけど。
もちろんそんな書き方誰もしないということは同意だ。

502 名前:デフォルトの名無しさん mailto:sage [2009/06/01(月) 00:59:31 ]
#if foo
 #if bar
  #include <momo.h>
 #else
  #include <taro.h>
 #endif
#endif

のような例はよくみかける。 

503 名前:デフォルトの名無しさん mailto:sage [2009/06/01(月) 01:25:41 ]
自分は普段はこう書くな。

#if foo
# if bar
# include <momo.h>
# else
# include <taro.h>
# endif
#endif

行頭に#があったほうが見た目わかりやすいと思う。




504 名前:503 mailto:sage [2009/06/01(月) 01:27:01 ]
#if foo
# if bar
#  include <momo.h>
# else
#  include <taro.h>
# endif
#endif

こうな。


505 名前:デフォルトの名無しさん [2009/06/01(月) 01:36:32 ]
Windows98のメモ帳でのプログラムの実行の仕方を教えて下さい
因みに入力したのはC言語のprintf何たらの簡単なプログラムです


506 名前:デフォルトの名無しさん mailto:sage [2009/06/01(月) 01:41:44 ]
書いたコードをここに貼り付けて、右下のボタンを押せ。
ttp://codepad.org/


507 名前:デフォルトの名無しさん mailto:sage [2009/06/01(月) 05:53:03 ]
>>502
俺もそう書くわ。
特に多いのが
#ifndef __BORLANDC__
 高度な処理;
#else
 低度な処理;
#endif
みたいにコンパイラで処理を分けたりとか、あとはデバッグの時かな。


508 名前:デフォルトの名無しさん mailto:sage [2009/06/01(月) 06:27:58 ]
1.下の多重ループで「A」は何行何列に表示されるか.
for(j=1;j<=2;j++) {
for(k=1;k<=3;k++) {
printf("A");
}
printf("\n");
  }
2.下の多重ループで「A」は何行何列に表示されるか.
for(j=1;j<=5;j++) {
for(k=1;k<=4;k++) printf("A");
printf("\n");
  }

1は2行3列で2は4行5列ですか?


509 名前:デフォルトの名無しさん [2009/06/01(月) 07:30:16 ]
>>506
すみません
ネットに繋げてないのでメモ帳での方法を教えて下さい



510 名前:デフォルトの名無しさん mailto:sage [2009/06/01(月) 10:56:47 ]
>509
別にメモ帳だろうが何だろうが、Cのプログラムには関係ないよ。
もちろん効率とかは違うだろうけど。

511 名前:デフォルトの名無しさん mailto:sage [2009/06/01(月) 11:32:44 ]
>>509
エスパーすると、コンパイラの使い方がわからないんだろう
そもそも509はC言語のコンパイラを持っているのか?
例えばVC,BCC,GCCなど。






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

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

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