1 名前:デフォルトの名無しさん [2009/03/02(月) 00:36:19 ] スレを勃てるまでもない低俗な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/
348 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 14:46:58 ] すみません Cでも正規表現使えると思ってますたw ありがとうございました
349 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 14:55:57 ] >>348 Cの場合、C#みたいに標準で用意されていないの。
350 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 14:59:55 ] 何かインクルードしたら使えるとか?
351 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 15:01:12 ] >>348 今できたけど…「 ./a.out < ファイル名 」で使ってみて #include <stdio.h> #include <ctype.h> int main() { int c; int max = 0, num = 0; while((c = getchar()) != EOF){ if(isdigit(c)) num = num * 10 + c - '0'; else { max = (num > max) ? num : max; num = 0; } } max = (num > max) ? num : max; printf("max = %d\n", max); return 0; }
352 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 15:15:02 ] できればC#に組み込めるようにして頂きたい^^; 適当にコピペしたらインクルードやgetcharが使えなかった
353 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 15:25:25 ] ここはC/C++スレだ 移植は手前の仕事
354 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 15:28:52 ] フヒヒw
355 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 15:43:03 ] wwwwwwwwwwwwwww
356 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 15:46:18 ] サーセン
357 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 19:42:09 ] ソースコード書くなんて、下っ端の仕事
358 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 19:46:46 ] ソースも書けない糞上司
359 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 19:47:38 ] ソースしか書けない専門学校卒
360 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 19:51:35 ] ソースも書けない落ちこぼれに言われてもなー
361 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 19:59:11 ] 高卒の叩き上げが最強ってことで、ゆるして
362 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 20:19:56 ] 就職||卒業出来ないからって荒らすなよ。 >>342 numerical recipes in CやC++に載ってる。C++もベタに書いてあるので、 ++の意味はほとんど無いw あとはqtiplotだっけ? originのfree implementationの ソース読むとか、MSDNにも解説があるな。しかし簡単な式だから、すぐ作れるだろ 携帯からなので、PCでググればもっと探せそう。
363 名前:デフォルトの名無しさん mailto:sage [2009/03/13(金) 13:46:55 ] >>362 >343 携帯だとすぐ下のレスも見られないのか? つーか、元質はCだと書いているのさえ見えてないのか。
364 名前:デフォルトの名無しさん mailto:sage [2009/03/13(金) 18:01:41 ] >>363 >>343 はPCのFoxit readerでさえ読み込めないんだけど? どうせ貼るなら、こっち貼れ ttp://www.fizyka.umk.pl/nrbook/c14-8.pdf
365 名前:デフォルトの名無しさん mailto:sage [2009/03/13(金) 18:55:28 ] >>364 >Foxit readerでさえ 「でさえ」? そりゃ Adobe Reader で読めなかったときに使う言葉だろ。
366 名前:デフォルトの名無しさん mailto:sage [2009/03/13(金) 19:15:04 ] >>365 >>363 は携帯で読めないのかって書いてるじゃん。 まあもちろん携帯のadobe readerでも読めない訳だが。
367 名前:343 mailto:sage [2009/03/13(金) 19:21:33 ] >>364 普通にIE+AcrobatReaderで見えるけど。怪しげなクローンより本家の方がいいと思ったんだけどな。 # そして私は>363ではない。
368 名前:デフォルトの名無しさん mailto:sage [2009/03/13(金) 20:26:31 ] PCのAcrobat Readerでも開かない。 なんか、変なプラグイン入れろって出る。 IEからでも。
369 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 03:35:05 ] 暗号化してあるみたいだね。headerがどうたらって出た どうせnumeric recipiは信用できないからいいけど。
370 名前:デフォルトの名無しさん [2009/03/14(土) 18:25:38 ] 作ったソフトをオープンソースで公開しようかと考えているのですが、 ネット上のサンプルをコピペしたコードが多々あって、勝手にオープンソースにしていいのかわかりません。 ライセンス表記がされていないものも多いので確認のしようがないのです。 こういう場合でも勝手にBSDライセンスとか付けて配布してしまっていいのでしょうか? 出所はもちろん明記するつもりですが。
371 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 18:31:47 ] バレてトラブルになった時の対処ができるなら。
372 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 18:55:18 ] コピペでオープンソースですか、笑っちゃいます。 コードを書けないのなら無茶な事しない。 ネット公開されてれば、使ってよいの判断ですが、 それでも、自身でコードを書き直して公開するのが本当でしょう。 動けば良いだけのコードをオープンソースですか、違うでしょ
373 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 21:00:58 ] そうですよねぇ。 でも反面、せっかく既にあるコードまで自分で書き直さなきゃならないのか?とも思うのです。 しかもサンプルの書き方が一番スマートなのに、あえて別の書き方をするのも無意味に思えてなりません。 サンプルを利用して書くのは普通のことだと思いますが、皆どうしているのでしょうか。 とりあえず今回はクローズドでいきます。ありがとうございます。
374 名前:デフォルトの名無しさん [2009/03/14(土) 21:54:26 ] >>370 もともとライセンス表記もせずパブリックドメイン同然で公開しているコードなら コピペのままではなく、君がそのコードを理解して、作りなおせば問題ないだろ。 出所も明かす必要無し。 コードって作り直せないくらい長かったり何回だったりするの?
375 名前:デフォルトの名無しさん [2009/03/14(土) 21:56:48 ] 何回→難解
376 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 22:21:17 ] >>374 いや逆に、数十行程度のサンプルが多くて直しようがないんです。 そのまで洗練されているのでいじると無駄にこんがらがります。 変数名やカッコの書き方を変えるといったしみったれたことしかできず…。
377 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 22:40:02 ] モジュールを丸ごとじゃなくてサンプルコードか・・・ サンプルコードをかき集めた場合は、いろんな流儀で書かれているわけだから、自分の流儀に書き直したほうがメンテしやすくなるぞ。変数名や括弧を直すだけでも効果的だ。 そうすれば改良できるところが見えてくるぞ。
378 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 22:44:48 ] なるほど、書き方は自分流に統一した方がいいですね。ありがとうございます。 小さいところでも直していけばいいのですね。そういう方向でいってみます。
379 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 22:59:23 ] つーか、数十行程度ならサンプルを理解した上で、自分で書けばいいじゃん。 その程度だったら記憶を手繰りながら書けるべ。
380 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 23:05:01 ] その二度手間が無駄って話じゃねーの
381 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 23:07:19 ] Linuxなんかは、著作権回避のために書き直しとかしてるだろ?
382 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 23:09:05 ] コピペしただけでは解ったつもりで解ってないことがほとんど。自分の手でコードを書かないと理解できない。それは無駄ではない。
383 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 23:18:43 ] せっかく再利用を前提としてソースコードを書いても ほとんど再利用されることはない 参考にすることはあっても
384 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 23:21:50 ] それは再利用性の設計が不十分なんだよ。
385 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 23:26:41 ] 再利用されることが無いのに再利用性の設計なんてそもそも不要だし
386 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 23:35:47 ] 再利用なんて、幻想だよ。 結局、作り直して使ってるだろ
387 名前:デフォルトの名無しさん mailto:sage [2009/03/15(日) 00:52:54 ] 再利用性なんて、無駄なコード入れて行数増やすための方便になってるからなあ
388 名前:デフォルトの名無しさん mailto:sage [2009/03/15(日) 01:06:40 ] まだ行数とか言ってんのかこの業界は
389 名前:デフォルトの名無しさん mailto:sage [2009/03/15(日) 01:16:57 ] リファクタリングしたら負けかなと思ってる
390 名前:デフォルトの名無しさん mailto:sage [2009/03/15(日) 02:17:37 ] わかりやすいコード記述を心掛け且つ 流用者が理解するのを諦める難解な操作を 程よく織り込むのがプロの仕事だ
391 名前:デフォルトの名無しさん mailto:sage [2009/03/15(日) 02:30:08 ] チンケなプロだなぁ
392 名前:デフォルトの名無しさん mailto:sage [2009/03/15(日) 08:58:28 ] 自分で恰好良く書いたつもりが 「何それ?だっせーソース」 とか笑われたことがあるんだろ
393 名前:デフォルトの名無しさん mailto:sage [2009/03/15(日) 11:41:41 ] libファイル配布
394 名前:デフォルトの名無しさん [2009/03/16(月) 14:12:14 ] あるテーブルより、KOJIN_ID(数値型8桁)を一旦ホスト変数H_KOJIN_IDに入れ それを11桁の文字型として出力しなければいけないのですが(余った桁はスペースで埋める) 下記のようにsprintf関数を使ってH_KOJIN_IDから、ファイル書き出し用構造体outの項目KOJIN_IDに セットするときに、現状のままだと余った桁に0が入ってしまいます。 データセット部 sprintf(out.KOJIN_ID,"%11.11ld",H_KOJIN_ID); 余った桁に半角スペースが入るようなsprintf指定方法はありませんか?
395 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 14:24:22 ] "%11d"
396 名前:デフォルトの名無しさん [2009/03/16(月) 14:43:45 ] %11dで試しましたが0で埋められてしまいます。
397 名前:デフォルトの名無しさん [2009/03/16(月) 14:46:47 ] 失礼しました! 間違えて%11.11dで試しましたが、%11dだけにしたら できました。 ありがとうございました。
398 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 14:51:24 ] >>394 マルチすんなゴミ
399 名前:デフォルトの名無しさん mailto:sage [2009/03/17(火) 00:50:51 ] C++の書籍を買おうと思っているのですが、大体何円くらいなんでしょうか? 教えてください
400 名前:デフォルトの名無しさん mailto:sage [2009/03/17(火) 00:55:30 ] そんくらいamazonで調べろよ
401 名前:デフォルトの名無しさん [2009/03/17(火) 00:56:09 ] Cの書籍は何円ぐらいしたよ? だいたい相場はかわらんさ
402 名前:デフォルトの名無しさん [2009/03/17(火) 01:00:51 ] >>399 1800-4500円
403 名前:デフォルトの名無しさん mailto:sage [2009/03/17(火) 02:17:46 ] >402 ただし、○冊セットの中の1冊のお値段、というオチが付くことも多そう。
404 名前:デフォルトの名無しさん mailto:sage [2009/03/17(火) 02:49:33 ] C++のセット本なんかあったか? 見た事無いが >>403 不味い本買ってんじゃねぇか?
405 名前:デフォルトの名無しさん mailto:sage [2009/03/17(火) 03:12:49 ] 週刊C++、創刊号は980円
406 名前:デフォルトの名無しさん mailto:sage [2009/03/17(火) 03:32:14 ] それを言うなら、創刊号1800円で、二号から4500円だろ…
407 名前:デフォルトの名無しさん mailto:sage [2009/03/17(火) 04:00:40 ] 3号は9450円か?
408 名前:デフォルトの名無しさん mailto:sage [2009/03/17(火) 06:25:56 ] まず創刊号の付録を教えてくれ
409 名前:デフォルトの名無しさん mailto:sage [2009/03/17(火) 06:27:57 ] VC++EEとGCCの豪華セット
410 名前:デフォルトの名無しさん mailto:sage [2009/03/17(火) 06:30:29 ] ↑エラー起きた場所が分かりやすいように、AAに変換してしくれる機能搭載
411 名前:403 mailto:sage [2009/03/17(火) 10:03:10 ] >404 あー、C++であったかどうかは分かんない。 でもVC++とかだと何シリーズか見かけた気がする。
412 名前:デフォルトの名無しさん mailto:sage [2009/03/17(火) 16:30:39 ] 毎週付録のモジュールをリンクしていくことでオリジナルIDEが完成
413 名前:デフォルトの名無しさん mailto:sage [2009/03/17(火) 18:27:14 ] //////////////////////////////// a.h template<typename T> class test { public: test(); void _inc(T n); void _dec(T n); private: T m_n; }; //////////////////////////////// a.cpp #include "a.h" template<typename T> test<T>::test() : m_n(0) { } template<typename T> void test<T>::_inc(T n){ return m_n++; } template<typename T> void test<T>::_dec(T n){ return m_n--; } test<int> aaa;
414 名前:デフォルトの名無しさん mailto:sage [2009/03/17(火) 18:28:32 ] //////////////////////////////// main.cpp extern test<int> aaa; #include <stdio.h> #include "a.h" void main(void){ aaa._dec(1); } externで宣言してるのにリンク時に未解決になります。 どこに誤りがあるのでしょうか?
415 名前:デフォルトの名無しさん mailto:sage [2009/03/17(火) 18:32:13 ] テンプレートは実装もヘッダに入れろ そういうもんだと思っておけばいい 詳しく知りたければ export キーワードあたりで自分で調べな
416 名前:デフォルトの名無しさん mailto:sage [2009/03/17(火) 18:40:22 ] >>415 ありがとうございます 無事解決しました
417 名前:デフォルトの名無しさん mailto:sage [2009/03/17(火) 18:50:20 ] なんでexportなんてキーワードがワザワザ必要な文法になったの? なにもつけなくても実装が別ファイルにあるなら、それはそれで問題ないのじゃね?
418 名前:デフォルトの名無しさん mailto:sage [2009/03/17(火) 18:55:14 ] >>417 宣言が必要なのよ。
419 名前:デフォルトの名無しさん mailto:sage [2009/03/17(火) 19:09:02 ] この場合、明示的にインスタンス生成すれば済む気が。
420 名前:デフォルトの名無しさん mailto:sage [2009/03/17(火) 19:15:11 ] C++0x に期待。
421 名前:デフォルトの名無しさん mailto:sage [2009/03/17(火) 19:30:18 ] C++0a
422 名前:デフォルトの名無しさん mailto:sage [2009/03/17(火) 19:32:53 ] >421 ありそうで困る
423 名前:デフォルトの名無しさん [2009/03/17(火) 19:33:38 ] 実装部分が別ファイルだと、コンパイル時にTが実際になんなのか分からないから、 実装部分は、コンパイルできなくない?リンク時に、改めてコンパイルし直すのか? exportって、どう言う仕組みで実現してるの?
424 名前:デフォルトの名無しさん mailto:sage [2009/03/17(火) 19:35:55 ] 16進にすると許容範囲内に見えるから怖い
425 名前:デフォルトの名無しさん mailto:sage [2009/03/17(火) 19:36:16 ] >>423 > リンク時に、改めてコンパイルし直すのか? そういうこと。 それやってというお願いするキーワードがexport。 まあg++とかVC++とかの有名どこが無視しているから、事実上死に設定だけど。
426 名前:デフォルトの名無しさん mailto:sage [2009/03/17(火) 23:54:31 ] >>421 2010年になると言うことかw
427 名前:デフォルトの名無しさん mailto:sage [2009/03/17(火) 23:56:03 ] >>413-414 explicit instantiationを知らないなら テンプレート関数の明示的インスタンス生成 - akihiko’s tech note d.hatena.ne.jp/aki-yam/20081129/1227982516 ここが分かりやすいよ。必読。
428 名前:デフォルトの名無しさん mailto:sage [2009/03/18(水) 00:53:11 ] >>421 C++0xa
429 名前:デフォルトの名無しさん mailto:sage [2009/03/18(水) 07:15:29 ] 記述場所が関数内かグローバルか判るコンパイル定数無い? GCC 3 で
430 名前:デフォルトの名無しさん mailto:sage [2009/03/18(水) 07:53:28 ] ttp://seclan.dll.jp/c99d/c99d07.htm#dt19990516 前定義識別名 __func__
431 名前:!=429 mailto:sage [2009/03/18(水) 14:53:38 ] >>430 へー そりゃ知らんかったな
432 名前:デフォルトの名無しさん mailto:sage [2009/03/18(水) 17:00:28 ] VS2008 C++について質問です。 構造体の配列に文字を格納したところ、デバッグでみると その場所+4つ先に格納されているのですがどういったことなのでしょうか。 以下は新規にプロジェクトを作成し、構造体とそれに代入しただけのソースの一部です。 struct TEST{ char testes[10]; }; struct TEST ttt; [STAThreadAttribute] int main(array<System::String ^> ^args) { ttt.testes[0]='A'; // コントロールが作成される前に、Windows XP ビジュアル効果を有効にします Application::EnableVisualStyles(); Application::SetCompatibleTextRenderingDefault(false); // メイン ウィンドウを作成して、実行します Application::Run(gcnew Form1()); return 0; } 上記の例だと[0]にAが入るはずなのですが、ブレークポイントを 置いて、デバッグでみると[4]にAが入っているように見えます。 実際は[0]にAが入っているので、動作については問題なかったです。
433 名前:デフォルトの名無しさん mailto:sage [2009/03/18(水) 17:44:58 ] まさかとは思うが、リリースビルドでデバッグしているとか、デバッグビルドに最適化を指定しているとか、 リビルドしてみてないとか言わないよな。
434 名前:デフォルトの名無しさん mailto:sage [2009/03/18(水) 18:07:27 ] >>432 C++とC++/.CLIは名前が似てるだけで別言語。
435 名前:デフォルトの名無しさん mailto:sage [2009/03/18(水) 18:16:53 ] >>434 でも質問の内容自体はVisual C++固有のことだから、 もし誘導するとしたら、Visual C++かVisual Studioスレがふさわしいと思う。
436 名前:デフォルトの名無しさん mailto:sage [2009/03/18(水) 18:32:57 ] >>430 ありがとう。 でも、コンパイル"後"定数に成るみたいで微妙に目的と合致しませんでした。
437 名前:デフォルトの名無しさん mailto:sage [2009/03/19(木) 20:04:24 ] BorlandC++Builderで以下のCプログラムを記述したところ 式の構文エラー(関数 main )と出ます。 #include<stdio.h> int main(void) { int english; printf("点数を入力してください\n"); scanf("%d",&english); printf("英語 %d点\n",english); if(english=>80) { printf("良くできました!"); } return 0; } if文を用いる場合は必ずelseでそれ以外の時の処理を書かなければならないのでしょうか?
438 名前:デフォルトの名無しさん mailto:sage [2009/03/19(木) 20:07:10 ] >=
439 名前:デフォルトの名無しさん mailto:sage [2009/03/19(木) 23:37:58 ] BASICでは>=でも=>でもOKだから、間違えちゃう人多いのかも。 他にも==を=と間違えたりべき乗に^を使っちゃったり。 BASICを習得してるといろいろ困るよねオマンコ
440 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 00:15:49 ] >>438 数学では >=は 大なりイコール って発音するじゃん。それで覚えれば大丈夫。
441 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 00:19:51 ] べき乗に^使ってしばらく悩む事あるな powとかすぐ出てこねーよw
442 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 00:22:17 ] /= を否定と間違えて使いそうになったりね
443 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 00:27:05 ] >>441-442 プログラムしばらくやってるやつは、悩むところじゃないだろ。 プログアム初心者は、悩む以前に分からない部分調べるか、誰かに聞くだろ。
444 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 01:56:47 ] >プログアム初心者は、悩む以前に分からない部分調べるか、誰かに聞くだろ。 そして>437にループ
445 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 09:19:46 ] PHPでは=>は矢印
446 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 17:37:43 ] >>440 数学に、そんな記号ない。縦に並べたのなら知ってる
447 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 17:41:56 ] じゃあやりなおし 数学では ≧は 大なりイコール って発音するじゃん。それで覚えれば大丈夫。
448 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 17:50:53 ] そもそも数学で子供の頃から慣れ親しんだ記号と 似ているようで違う表記をするために間違えるのだから、 それは意味ないのじゃね?
449 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 17:58:50 ] 声に出して確認しろってことだろ
450 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 18:03:35 ] 自分は>=と打つときに、心の中で「大なりイコール」と諳んじてるから まず間違えないな
451 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 18:10:04 ] 俺もBASIC出身だから=>やったことあるわw
452 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 18:22:15 ] BASICやった後、Cに戻った直後は ==と書くべきところを=にして悩む 少しリハビリすると大丈夫だけど
453 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 18:44:24 ] というか、≧ を口に出して読んだ記憶がないな だから「大なりイコールって考えればわかりやすいでしょ」といわれても 頭の中でもそんな風に考えたことないし・・って感じ
454 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 19:09:25 ] >>453 は≧を大なりイコールって読むことを知らなかったってことか? そりゃ問題だな。
455 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 19:21:11 ] greater or equal って読んでてごめんね
456 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 19:23:40 ] greater than or equal to と言うのが正しい
457 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 19:26:30 ] JISとかで読み方決まってないのかのう
458 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 19:26:53 ] gte
459 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 19:48:21 ] > gt < lt >= ge <= le == eq != ne
460 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 20:52:55 ] >>453 見よ、これがゆとり教育の被害者である
461 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 21:22:32 ] larger than or equal toって読んでた
462 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 21:54:23 ] 普通は以上未満つかうだろ
463 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 22:05:20 ] 以下<−>以上 未満<−>???
464 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 22:06:27 ] より小さい<−>より大きい
465 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 22:06:44 ] より大きい
466 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 22:06:54 ] 超過
467 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 22:07:32 ] {○, ●}×{→、←}
468 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 22:10:47 ] ○→) ●→]
469 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 23:01:44 ] >>463 反対の意味で使ってるなら間違い
470 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 23:44:36 ] 同じ意味で使ってるなら間違い
471 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 23:47:10 ] どっちの推測も間違い
472 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 04:16:01 ] この議論に意味は無い
473 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 13:23:59 ] それ以外ネタが無い
474 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 21:28:22 ] 年度末の一番忙しい時期に、仕事以外で頭を使いたくない
475 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 22:24:42 ] ここに言う意味が無い
476 名前:デフォルトの名無しさん mailto:sage [2009/03/22(日) 00:02:16 ] >>459 FORTRANはすっこんでろ
477 名前:デフォルトの名無しさん mailto:sage [2009/03/22(日) 00:07:15 ] おっとtestコマンドの悪口はそこまでだ。
478 名前:デフォルトの名無しさん mailto:sage [2009/03/22(日) 02:07:37 ] 『C++はCの完全な上位互換を失った』と見るのですが 具体的にC言語ファイルをそのまま.cppにしてエラーが起こる例ってどんなのあります? 例えばmain関数内でmain関数を使うとエラーになるようですが。(でも常用外だから普通は問題にならない) (1) C++ではエラーが出る (2) Cで稀に使われるが、C++で別の動きをする (想定外動作) 無理して作れば色々出てきそうですが・・・・
479 名前:デフォルトの名無しさん mailto:sage [2009/03/22(日) 02:19:01 ] >>478 main(c){}
480 名前:デフォルトの名無しさん mailto:sage [2009/03/22(日) 02:23:36 ] 一番よく指摘されるのは void*をキャストする必要があるかどうかだろ。 char *p = malloc(...); が通るかどうか。
481 名前:デフォルトの名無しさん mailto:sage [2009/03/22(日) 02:25:31 ] 変数名にthrowとかusingとか使ってる場合など。 C++が作られていくときに、新たなキーワードの導入は常に強い反対があったと聞く。
482 名前:デフォルトの名無しさん mailto:sage [2009/03/22(日) 02:32:45 ] 複合リテラルとかは?
483 名前:デフォルトの名無しさん mailto:sage [2009/03/22(日) 02:33:38 ] >>478 C99のことだと思うけど可変長配列とかC++に無い あとintの省略もできないな
484 名前:デフォルトの名無しさん mailto:sage [2009/03/22(日) 02:33:56 ] newとか多いよな。 oldとnewの両方を一時変数名にするとか。
485 名前:デフォルトの名無しさん mailto:sage [2009/03/22(日) 02:38:49 ] >>478 extern のついてない const なグローバル変数を定義して ほかのソースからextern宣言して見てるとき
486 名前:デフォルトの名無しさん mailto:sage [2009/03/22(日) 16:49:25 ] でも俺としては例え過去のとかぶっても予約語はしっかり作って欲しい。 無理に予約語を増やさないようにするあまり、同じ予約語で少しずつ違った意味に使うの多くない? (例 static, template)
487 名前:デフォルトの名無しさん mailto:sage [2009/03/22(日) 18:35:34 ] D言語でも使ってろよ
488 名前:デフォルトの名無しさん mailto:sage [2009/03/22(日) 19:30:32 ] >>478 C++ の規格の付録 C にまとめられてるよ
489 名前:デフォルトの名無しさん mailto:sage [2009/03/23(月) 09:24:50 ] char hoge[4] = "ABCD"; // これがエラーになるかどうか
490 名前:デフォルトの名無しさん mailto:sage [2009/03/23(月) 12:37:17 ] 構造体タグの名前空間が独立していない。 struct foo {int bar;} foo; // 例えばこれがエラーになる
491 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 08:18:48 ] >>489 char hoge[4] = "ABCD"; がC言語だとhoge[0]='A',hoge[1]='B',hoge[2]='C',hoge[3]='D'でC++だとエラーになるんだっけ? char hoge[5] = "ABCD"; の場合はCでもC++でも同じhoge[0]='A',hoge[1]='B',hoge[2]='C',hoge[3]='D',hoge[4]='\0'だよね。
492 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 18:04:39 ] C++のお勧めの書籍教えてくだされ
493 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 18:05:16 ] Modern C++ Design 超お勧め。っていうか、一度読んでみると歯が全部抜け落ちる。
494 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 18:07:30 ] うむ、サンクスbb 早速見てくる
495 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 18:09:17 ] 入門者向けの書籍教えてくだされ
496 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 18:12:19 ] 入門者向けなら、C++ Coding Standards。 Effective C++とかExceptional C++の最新の要約が詰まってる。 わからない場所=自分の理解が足りていない場所 という今後の学習指針にもなる。 読むと腸内がすっきりする。
497 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 18:21:11 ] サンクス とても参考になります やはり値段が高いほうが内容も詰まってるんでしょうね
498 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 18:39:57 ] Effective C++ 原著第3版 amazonで感想を見てみたんですけど・・・・ 中級者以上を対象としているみたいな感じなのがありました 本当にこれで大丈夫でしょうか・・?
499 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 19:03:58 ] >>491 ==
500 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 19:07:13 ] >>498 基本構文だとか継承だとかテンプレートの使い方だとか そういう基礎的なのは習得してる人向けっていう程度 だが、そんなに難しくはないよ コード付でかなり親切な説明がされてるし
501 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 19:08:34 ] Effective C++とかは中級者向けじゃないよ。 入門書の次に読まなければならないレベルの本だよ。 この本を読まずに「中級者」を名乗ること自体がおこがましいよ。 この本を読んだことのない人は 個人的なプログラムしか組む資格がないといってしまっていいくらいに 基本的な事柄について書かれた本だよ。
502 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 20:29:39 ] Effective C++か。わかるわかる。 でも初心者レベルではないと思う。 「中級者になりたい初心者なら必読」という意味では初心者向けだな。 入門者の場合は意味不明だと思うが、初心者なら説明が丁寧でたとえがすばらしく分かりやすいからオススメ。
503 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 20:32:17 ] 10年間Cを書いてきたシニアエンジニアが独力で半年間C++を検討した結果が全て、 EffectiveC++に(より洗練された形で)書かれていたと言っていた。 要は、EffectiveC++を最初から読んでいれば半年間無駄にしなかったのにね、と。
504 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 20:39:53 ] Cのファイルアクセス程度までしか勉強していないようなヤツでもわかるものかしらね
505 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 20:40:06 ] 中級者なら知ってて当然のことが書いてあるだけで、 読まなくても別に中級者になれるけどな
506 名前:503 mailto:sage [2009/03/24(火) 21:59:39 ] >>504 >Cのファイルアクセス程度までしか勉強していないようなヤツでもわかるものかしら C++の入門者だから無理じゃないかな? クラスって何よ?継承って何だよ?テンプレートとは??? っていう感じになっちゃってまともに読み進められないと思う。 >>505 確かにそう言うことになるな。 別に全員が読んでるわけじゃないだろうし。
507 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 22:45:56 ] Effective C++はC++を真面目にやろうと思ったら必読書。 読んで理解できなければ、理解できるようになってからまた読めばいい。 よって常にお薦め。 いつまでも理解できないならそいつはC++に向いてない。
508 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 23:00:50 ] Effective C++は中級者なら知ってて当然の知識集だから、 この本自体は中級者向けじゃないよ。 この本に書かれている知識を習得していない人は 中級者じゃなくて単なるカスプログラマだから。 何度も書くけど、入門書を読んだあとに読むべき本だよ。
509 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 23:09:56 ] 口悪いの多いな。
510 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 23:22:00 ] 件のEffective C++自体、結構口の悪い文章だから。
511 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 23:28:42 ] 2chだからだろ。 日常生活なら滅多に使わない侮蔑を含む日本語が飛び交う場所だからな。 むしろこのスレはまだマシな方じゃね?
512 名前:504 mailto:sage [2009/03/25(水) 00:36:26 ] >>506 クラスとか継承はJavaのさわり程度ならやったので意味だけならなんとか
513 名前:デフォルトの名無しさん mailto:sage [2009/03/25(水) 00:43:42 ] Effective C++はC++特有の仕様に触れることもあるから 少なくとも初心者向けのC++解説本は読んでることが前提。 ちゅか、Effective C++を読めば、C++のプログラムに Cのテクニックはあまり(ほとんど?)役に立たないことがわかる。 Cの知識は無用ともいえる。
514 名前:デフォルトの名無しさん mailto:sage [2009/03/25(水) 00:45:12 ] >>513 Cで培った危険を予知する感覚というか知識は必要じゃね? まあC++のソースを書いていてprintfなんて書こうものならもうそいつのソースは信用できないな。
515 名前:デフォルトの名無しさん [2009/03/25(水) 00:46:23 ] >まあC++のソースを書いていてprintfなんて書こうものならもうそいつのソースは信用できないな。 なんてことを言う奴は信用しないことにしている。
516 名前:デフォルトの名無しさん mailto:sage [2009/03/25(水) 01:00:11 ] coutなんか使わなくてもprintfで十分足る(キリッ
517 名前:デフォルトの名無しさん mailto:sage [2009/03/25(水) 01:09:59 ] printfは型安全を無効化するっていうことを理解して使う分には問題ないんでないの? サッターは「安全装置のない車を運転するほうが楽なのといっしょだ」みたいな主旨のことを書いてた。
518 名前:デフォルトの名無しさん mailto:sage [2009/03/25(水) 01:27:36 ] fgets()でstd::stringに読み込めないのは不便だな
519 名前:デフォルトの名無しさん mailto:sage [2009/03/25(水) 01:35:46 ] シフト演算子オーバーライドして返り値への代入を繰り返す「どうだ凄いだろ」的な構文でなければ C++内の printf は早々に駆除されてたと思う。 初めて見たとき もうちょっとマトモナやり方があるだろう?と感じた。
520 名前:デフォルトの名無しさん mailto:sage [2009/03/25(水) 01:40:01 ] でも吐き出すコードはそこそこまともじゃない?
521 名前:デフォルトの名無しさん mailto:sage [2009/03/25(水) 01:43:16 ] CにないC++の機能 たとえばClassとかSTLとかは使わにゃ損々なんだが iostream系のようにCにもある機能は 別に置き換えなきゃならんわけじゃないし
522 名前:デフォルトの名無しさん mailto:sage [2009/03/25(水) 01:46:49 ] まあiostreamは単なる多重継承の技術的デモンストレーションだという 極論まであるし遅いしだな 時と場合に応じて使い分ければ良い
523 名前:デフォルトの名無しさん mailto:sage [2009/03/25(水) 02:54:02 ] 可変引数のもたらす潜在的なセキュリティホールがむにゃむにゃ
524 名前:デフォルトの名無しさん mailto:sage [2009/03/25(水) 08:12:59 ] >>519 返り値への代入を繰り返すってなに?
525 名前:デフォルトの名無しさん mailto:sage [2009/03/25(水) 09:20:24 ] >>524 ((std::cout << hoge) << moge) 代入じゃねえな。 他は >>519 に同意。 特にシフト演算子のオーバーライドとか、やっちゃ駄目な部類。
526 名前:デフォルトの名無しさん mailto:sage [2009/03/25(水) 12:39:57 ] 初期のC++には、C++のライブラリは、ほとんどiostreamしか付いて無かった (stringや複素数はあった)。だからC++の基本機能や、言語概念の説明といった役割が大きかった。 その後、多重継承が追加されて、書式付き入力ストリームと出力ストリームを結合させるなど、 仮想基底クラスの用法を示している。そういう歴史的経緯が判らないと、 微妙に感じるかも知れないけど、自分定義の型拡張やコンパイル時のチェックも効くし、 長く使ってると愛着も湧いたりする。better Cとして使ってる人には不評みたいね。 カレー南蛮そばが来ないので、長文してしまった。
527 名前:デフォルトの名無しさん mailto:sage [2009/03/25(水) 13:36:58 ] 不評っつーか、わざわざ使うまでもない
528 名前:デフォルトの名無しさん mailto:sage [2009/03/25(水) 13:47:06 ] わざわざも何も、それが標準的な出力手段なんだが?
529 名前:デフォルトの名無しさん mailto:sage [2009/03/25(水) 14:28:01 ] オーバーライドとオーバーロード混ざってる悪い子はいねがー?
530 名前:デフォルトの名無しさん mailto:sage [2009/03/25(水) 14:53:12 ] 最初から可変長テンプレートを入れてれば、 std::cout(hoge, fuga, std::endl); とか書けたのにな。 だが、D言語では Stdout(hoge)(fuga).newline;
531 名前:デフォルトの名無しさん mailto:sage [2009/03/25(水) 15:15:07 ] オレオレフィルタとか書くときはboost::iostreamsを使う
532 名前:デフォルトの名無しさん mailto:sage [2009/03/25(水) 15:58:48 ] >>526 じゃあもう要らないですね。obsolete にしましょ。
533 名前:デフォルトの名無しさん mailto:sage [2009/03/25(水) 17:48:52 ] OKです
534 名前:デフォルトの名無しさん mailto:sage [2009/03/25(水) 18:12:00 ] いくら不要になったといえども 作ってしまった過去の資産()があるから削っちゃだめだろ iostream
535 名前:デフォルトの名無しさん mailto:sage [2009/03/25(水) 18:32:28 ] 負債というべき