- 1 名前:デフォルトの名無しさん [2012/03/15(木) 13:41:40.36 ]
- C言語の入門者向け解説スレッドです。
★前スレ C言語なら俺に聞け(入門編)Part 97 toro.2ch.net/test/read.cgi/tech/1330177298/ C言語なら俺に聞け(入門編)Part 97 toro.2ch.net/test/read.cgi/tech/1329161329/ ★過去スレ makimo.to:8000/cgi-bin/search/search.cgi?q=%82b%8C%BE%8C%EA%82%C8%82%E7%89%B4%82%C9%95%B7%82%AF&andor=AND&sf=0&H=&view=table&D=tech&shw=5000 ★教えて欲しいのではなく宿題を丸投げしたいだけなら ↓宿題スレ↓へ行ってください。 C/C++の宿題片付けます 156代目 toro.2ch.net/test/read.cgi/tech/1328276597/ ★C++言語については避けてください。C++対応明記スレへどうぞ ★分からない事をなるべく詳しく書いて下さい。 ★ソースコードを晒すと答えやすくなるかもしれません。 # 抜粋/整形厳禁、コンパイラに渡したソースをそのまま貼ること # サイズが大きい場合は宿題スレのアップローダ等を利用してください ★開発環境や動作環境も晒すと答えが早いかもしれません。 ★質問者は最初にその質問をした時のレス番号を名前欄に書いて下さい。 長くなりそうなコードはcodepadに貼り付けてもいいでしょう codepad.org/
- 577 名前:デフォルトの名無しさん mailto:sage [2012/03/21(水) 20:01:34.07 ]
- >>573
専用の板があんの そこに行け データベース toro.2ch.net/db/
- 578 名前:デフォルトの名無しさん mailto:sage [2012/03/21(水) 20:16:50.38 ]
- 入門スレなのに、プログラマー同士が相談するスレになってる。
専門的すぎてわからん。
- 579 名前:デフォルトの名無しさん mailto:sage [2012/03/21(水) 20:19:51.89 ]
- 確かにプログラマー風情出しまくってC言語が嫌いになる。
- 580 名前:デフォルトの名無しさん mailto:sage [2012/03/21(水) 21:17:41.92 ]
- >>569
全然違うだろwww頭沸いてんのかwww とりあえず辞書かなんかで調べてみろよ わからない所があったら聞いてやるから
- 581 名前:デフォルトの名無しさん mailto:sage [2012/03/21(水) 22:05:06.49 ]
- >>578
それだけC言語っていうのは難しい言語なんだよ。 皆、Cを使うのに苦労している。 Cユーザーが集まれば愚痴や相談事になりやすい。
- 582 名前:デフォルトの名無しさん mailto:sage [2012/03/21(水) 22:10:05.38 ]
- >>581
C言語使ってるのは学生か組み込みぐらい どっちもまともに言語学はやってない
- 583 名前:デフォルトの名無しさん mailto:sage [2012/03/21(水) 22:11:41.96 ]
- 言語学ってどんなことするの?
- 584 名前:デフォルトの名無しさん mailto:sage [2012/03/21(水) 22:12:46.45 ]
- 情報系だったけど大したことやんなかったよ。
ドラゴンブックとかはで読んでたゼミもあったけど。
- 585 名前:デフォルトの名無しさん mailto:sage [2012/03/21(水) 22:15:35.17 ]
- >>584
お前がいたゼミがたいしたことなかった、 の間違いじゃねーか? 事実は正確に言えよ
- 586 名前:デフォルトの名無しさん mailto:sage [2012/03/21(水) 22:16:10.96 ]
- >>573
どこで追い払われたのか書いてくれるかな。 そこが適切なスレならそこでレスする
- 587 名前:デフォルトの名無しさん mailto:sage [2012/03/21(水) 22:17:16.77 ]
- >>585
高卒? 必修じゃ基本的なあたりで大したことないって話だよ。
- 588 名前:デフォルトの名無しさん mailto:sage [2012/03/21(水) 22:40:33.40 ]
- あれ、必修限定?なんでゼミの話を出したの?
ゼミも必修っちゃあ必修だけど、それを許容するなら>>585はおかしなことを言っていないし…
- 589 名前:デフォルトの名無しさん mailto:sage [2012/03/21(水) 22:43:47.82 ]
- 管理者って何ですか?
プログラマーの苦労話的な本読んだけど、管理者がどうのこうの 言ってました。
- 590 名前:デフォルトの名無しさん mailto:sage [2012/03/21(水) 22:45:49.61 ]
- 始めてhello, world表示できた!なんか感動したわw
- 591 名前:デフォルトの名無しさん mailto:sage [2012/03/21(水) 22:52:45.51 ]
- >>589
逆だ。 本のネタになるほどの悲しいマラソンランナーを総称して、 管理人って呼ぶんだよ。
- 592 名前:デフォルトの名無しさん mailto:sage [2012/03/21(水) 23:00:44.05 ]
- これ系で管理者といえばrootのことだろJK
素人にもほどがある。
- 593 名前:デフォルトの名無しさん mailto:sage [2012/03/21(水) 23:16:21.70 ]
- Administrator を忘れてもらっちゃ困るぜ
- 594 名前:デフォルトの名無しさん mailto:sage [2012/03/21(水) 23:17:46.73 ]
- 寒い部屋で震えながら文字だらけの画面にむかってブツブツつぶやいてる人の事だろ?
- 595 名前:デフォルトの名無しさん mailto:sage [2012/03/21(水) 23:19:54.47 ]
- >>590
おめでとうw 次は自分の好きな文字列に変えて、自分の手作りのアプリケーションであることを何度も確認するんだ 望むなら何行でも出力できるぞ!
- 596 名前:デフォルトの名無しさん mailto:sage [2012/03/21(水) 23:23:40.75 ]
- >>594
それは20年以上前の話だな。
- 597 名前:デフォルトの名無しさん mailto:sage [2012/03/21(水) 23:38:58.95 ]
- ドラゴンブックもってるお
- 598 名前:デフォルトの名無しさん mailto:sage [2012/03/21(水) 23:39:51.91 ]
- >>590
おめ 楽しそうだな 俺も久しぶりに楽しくプログラミングする時間をとろう・・・
- 599 名前:デフォルトの名無しさん mailto:sage [2012/03/21(水) 23:50:11.61 ]
- >>596
ユーザーSEはリモートでぬくぬくかもしれんがベンダーは携帯OFFにしてサーバー室で作業なんだぞ
- 600 名前:デフォルトの名無しさん mailto:sage [2012/03/21(水) 23:50:22.04 ]
- プログラムしないのに、こんなスレに張り付いてるやつもおるのか…
本来マ板行くべき奴なのかな?
- 601 名前:デフォルトの名無しさん mailto:sage [2012/03/22(木) 00:05:33.91 ]
- レス乞食だろ
馴れ合い板あたりがお似合いだ
- 602 名前:デフォルトの名無しさん [2012/03/22(木) 00:13:23.41 ]
- チョンとかヘボが?
- 603 名前:デフォルトの名無しさん mailto:sage [2012/03/22(木) 00:30:26.55 ]
- プログラムしないやつがいる?
- 604 名前:デフォルトの名無しさん mailto:sage [2012/03/22(木) 00:31:42.67 ]
- プログラムしないあるよ
- 605 名前:デフォルトの名無しさん mailto:sage [2012/03/22(木) 00:32:25.78 ]
- >>593
それ速攻で変えるわ
- 606 名前:デフォルトの名無しさん mailto:sage [2012/03/22(木) 01:27:07.72 ]
- うひょー
- 607 名前:デフォルトの名無しさん mailto:sage [2012/03/22(木) 01:40:30.98 ]
- >>592
JKは素人だろ普通
- 608 名前:デフォルトの名無しさん [2012/03/22(木) 01:42:06.59 ]
- 超絶つまんね。
- 609 名前:デフォルトの名無しさん mailto:sage [2012/03/22(木) 02:50:54.41 ]
- すいません。最近プログラミングの勉強を始めてどうしても聞きたい事があるんですけどいいですか?
- 610 名前:デフォルトの名無しさん mailto:sage [2012/03/22(木) 02:53:05.30 ]
- だめです
- 611 名前:デフォルトの名無しさん mailto:sage [2012/03/22(木) 02:57:08.23 ]
- 確認なんてせずに聞けばいい。
ただ、どうもスレ違いだとレスをすることになる気はしている
- 612 名前:デフォルトの名無しさん mailto:sage [2012/03/22(木) 03:00:42.80 ]
- いえ、理論ってか概念みたいなんすけど、もし、優れた演算能力、優れた五感能力、文法とか、無茶クチャ知ってて
- 613 名前:デフォルトの名無しさん mailto:sage [2012/03/22(木) 03:04:02.68 ]
- 色んな言語を知ってて、機械語でゲームが見えるどうなるんすか?
- 614 名前:デフォルトの名無しさん mailto:sage [2012/03/22(木) 03:05:34.53 ]
- あ、そんな人が居たらです。
- 615 名前:デフォルトの名無しさん mailto:sage [2012/03/22(木) 03:05:34.50 ]
- おなかが減ります。
- 616 名前:デフォルトの名無しさん mailto:sage [2012/03/22(木) 03:07:15.19 ]
- お願いします。これだけはマジレスしてくれません?wikiで知ってゲーム作りたくて、お願いします。
- 617 名前:デフォルトの名無しさん mailto:sage [2012/03/22(木) 03:07:57.70 ]
- オナニーがやめられなくなります。
- 618 名前:デフォルトの名無しさん mailto:sage [2012/03/22(木) 03:08:08.73 ]
- ゲームは機械語では見えません
- 619 名前:デフォルトの名無しさん mailto:sage [2012/03/22(木) 03:39:06.24 ]
- そもそも機械語以前に日本語を理解してください
それと機械語と言っている時点でスレチです。
- 620 名前:デフォルトの名無しさん mailto:sage [2012/03/22(木) 03:40:05.36 ]
- Windowsの場合user32.dllって実行時に読み込まれるんだっけ?
- 621 名前:デフォルトの名無しさん [2012/03/22(木) 03:41:54.71 ]
- なんのこっちゃ。
- 622 名前:デフォルトの名無しさん mailto:sage [2012/03/22(木) 03:49:49.13 ]
- ないはず
- 623 名前:デフォルトの名無しさん mailto:sage [2012/03/22(木) 04:57:18.47 ]
- ん?ダイナミックリンクなんだから実行時だと思うけど違うのか?
- 624 名前:デフォルトの名無しさん mailto:sage [2012/03/22(木) 05:34:45.72 ]
- >>622
はずとは何故ですか?
- 625 名前:デフォルトの名無しさん mailto:sage [2012/03/22(木) 05:38:21.54 ]
- いや知りたいだけなんですよ。
- 626 名前:デフォルトの名無しさん mailto:sage [2012/03/22(木) 05:43:19.12 ]
- まぁいいや。自分で考えますわ。
- 627 名前:デフォルトの名無しさん [2012/03/22(木) 07:08:18.08 ]
- おい
途中から俺じゃないがやつが俺になってるぞ
- 628 名前:デフォルトの名無しさん mailto:sage [2012/03/22(木) 09:13:44.13 ]
- 俺俺、俺だよ。
- 629 名前:はちみつ餃子 ◆8X2XSCHEME mailto:sage [2012/03/22(木) 14:36:38.98 ]
- >>620
プロセスが生成されたときにシステム DLL もそのアドレス空間にマッピングされて リンク (インポートアドレステーブルの書き換え) するけど、 読み込み自体は起動時じゃねーの
- 630 名前:デフォルトの名無しさん mailto:sage [2012/03/22(木) 15:59:11.71 ]
- 必殺はみちつマジレス
- 631 名前:デフォルトの名無しさん mailto:sage [2012/03/22(木) 16:00:04.89 ]
- >>627
ム板ではよくあること
- 632 名前:デフォルトの名無しさん [2012/03/22(木) 16:01:30.08 ]
- プセロスが生成さたれときにシテスム DLL もそのアレドス空間にマッンピグされて
リンク (イポンートアレドステブールの書換きえ) すけるど、 読込みみ自体は起動時じねゃーの
- 633 名前:デフォルトの名無しさん mailto:sage [2012/03/22(木) 16:02:52.92 ]
- プセロスが生成さたれときにシテスム DLL もそのアレドス空間にマッンピグされて
リンク (イポンートアレドステブールの書換きえ) すけるど、 読みみみ自体は起動時じねゃーの
- 634 名前:はちみつ餃子 ◆8X2XSCHEME mailto:sage [2012/03/22(木) 16:56:05.82 ]
- 読込みみって何だよ
頼むからそういうのはお前の脳内だけで勘弁
- 635 名前:デフォルトの名無しさん mailto:sage [2012/03/22(木) 17:35:35.20 ]
- はみちつ後ろー
- 636 名前:デフォルトの名無しさん mailto:sage [2012/03/22(木) 17:59:26.79 ]
- 最初と最後だけあってれば意外と読めるもんでしょ、みたいなコピペがあるじゃん。
- 637 名前:デフォルトの名無しさん mailto:sage [2012/03/22(木) 18:03:06.63 ]
- volatile指定子は誰得なんですか。使ったことある人いませんか?
- 638 名前:デフォルトの名無しさん mailto:sage [2012/03/22(木) 18:09:03.58 ]
- ぱぷー
- 639 名前:デフォルトの名無しさん mailto:sage [2012/03/22(木) 18:10:07.57 ]
- 周辺機器のレジスタとかポートにマッピングされてるとか、別のスレッドも触るとか、
そういうのは最適化せずに必要なときにちゃんと現地から値をお取り寄せする必要がある。
- 640 名前:デフォルトの名無しさん mailto:sage [2012/03/22(木) 18:15:10.60 ]
- DMAとかでCPU以外が書き換えちゃう場合とかね
- 641 名前:デフォルトの名無しさん mailto:sage [2012/03/22(木) 18:38:27.36 ]
- いろいろあるんだよ
- 642 名前:デフォルトの名無しさん mailto:sage [2012/03/22(木) 22:15:26.29 ]
- >>637 組み込みではよく使う。
たとえばグローバル変数で、メインルーチンと割り込みで参照、変更される ものがあるとき付ける。 付けないと最適化でその変数の外部での変更がが無視されてif文が無視されたりする。
- 643 名前:デフォルトの名無しさん mailto:sage [2012/03/22(木) 22:38:11.58 ]
- >>637
インラインアセンブラの時に使った。
- 644 名前:637 mailto:sage [2012/03/22(木) 23:20:54.77 ]
- 要は最適化で変数がハブられるのを防止するという事なんですね
俺にもvolatileを付けてほしいです
- 645 名前:デフォルトの名無しさん mailto:sage [2012/03/22(木) 23:52:30.95 ]
- 昔はregisterの逆と教わったな。今はregisterなんて使わないけど。
- 646 名前:はちみつ餃子 ◆8X2XSCHEME mailto:sage [2012/03/22(木) 23:54:43.90 ]
- レジスタに割り当てられないというだけではメモリに割り当てられるとは限らないよな。
- 647 名前:デフォルトの名無しさん mailto:sage [2012/03/23(金) 00:00:52.81 ]
- >>637
マルチスレッドとか、割込処理とか、メイン処理と別の流れで書き換えられるような変数につける。 ある処理の中では、絶対に値が書き換わらない様な変数が、書き変わっているかもしれないから、 都度ちゃんと中身をみてね、ってこと。 例えると、 自分しか書き込まないノートは、自分が書き換えないなら、絶対に前の状態から変わっていないから、 自分が書き込んだ内容が読み出せると期待して、いちいちノートを見なくてもいい。 だけど、他の誰かが書き込めるノートは、自分が書き込んだ後に、書き変わっているかも しれないから、その都度、確認する必要がある。 この自分以外の誰かが書き換えることがあるよ、っていう印がvolatile。 マルチスレッドや、割り込み処理を扱うようになると、使用する必要が出てくる。
- 648 名前:デフォルトの名無しさん mailto:sage [2012/03/23(金) 00:05:39.26 ]
- >>646
メモリかどうかは知らんけど 「絶対にどっからでもアクセスできるとこ」 ってのを保証してるわけだし、まあ十中八九メモリだろ、多分。
- 649 名前:デフォルトの名無しさん mailto:sage [2012/03/23(金) 00:06:47.06 ]
- >>644
dic.yahoo.co.jp/dsearch/1/1na/078908000/ これでもvolatileつけたいか?
- 650 名前:デフォルトの名無しさん mailto:sage [2012/03/23(金) 00:07:33.14 ]
- >>645
適当すぎ registerとvolatile両方付いてる場合、どうすんだよ
- 651 名前:デフォルトの名無しさん mailto:sage [2012/03/23(金) 00:12:11.30 ]
- 陽気な>>637
いいじゃん、と無理やりプラス思考で。
- 652 名前:デフォルトの名無しさん mailto:sage [2012/03/23(金) 00:18:20.87 ]
- みかか
- 653 名前:デフォルトの名無しさん mailto:sage [2012/03/23(金) 00:26:45.05 ]
- >>650
ノリの話であって厳密な定義としてそう教わったわけじゃないよ。 わかるだろ? で、register と volatile が両方ついてたら何が起こるのか教えてくれよ。
- 654 名前:デフォルトの名無しさん mailto:sage [2012/03/23(金) 00:33:20.18 ]
- 使わなくてすむならそれでいいじゃん
問題が起きてから考えろよ
- 655 名前:デフォルトの名無しさん mailto:sage [2012/03/23(金) 00:45:58.59 ]
- >>653
コンパイラ次第。 まぁ普通はregisterはあってもなくても同じだろうな。
- 656 名前:デフォルトの名無しさん mailto:sage [2012/03/23(金) 00:53:14.27 ]
- registerは単なるヒントだけど、volatileはそうじゃないよね?
- 657 名前:デフォルトの名無しさん mailto:sage [2012/03/23(金) 00:56:09.10 ]
- そうじゃないけど?
- 658 名前:デフォルトの名無しさん mailto:sage [2012/03/23(金) 00:56:47.56 ]
- だからコンパイラ次第ではなくて、volatileが生きるんじゃないの?
- 659 名前:デフォルトの名無しさん mailto:sage [2012/03/23(金) 00:57:08.04 ]
- 誰が死ぬなんて言ったんだ?
- 660 名前:デフォルトの名無しさん mailto:sage [2012/03/23(金) 01:01:05.50 ]
- すみません、失礼します。
ダイテル親子の「C言語プログラミング」という本で今、 迷路を作成して、脱出経路を表示する問題をやっています。 迷路作成はうまくいったのですが、脱出経路の見つけ方がわかりません。 いわゆる「右手で右側の壁をなぞりながら進めば出口にたどり着ける」 というアルゴリズムなのですが・・・、入口から一歩も動かない始末です。 何かアドバイスやポイント等いただけると、助かります。
- 661 名前:デフォルトの名無しさん mailto:sage [2012/03/23(金) 01:07:07.54 ]
- スレチだがまぁ答えてやるか
ぱっとおもいついたのが再帰関数を利用する方法で 書記位置の右の方向に移動できるかをチェック 次にできなかった場合に方向を90°変更してそこが通れるかのチェック 通れる場合は進む 通れない場合は再帰関数でチェックする っていう方法でいけるんじゃね?>
- 662 名前:デフォルトの名無しさん mailto:sage [2012/03/23(金) 01:07:29.59 ]
- まずは自分が迷路の中に入ったつもりでそのアルゴリズムにしたがって歩いてみなよ。
- 663 名前:デフォルトの名無しさん mailto:sage [2012/03/23(金) 01:08:05.82 ]
- 入り口の背中を塞げばおk
- 664 名前:デフォルトの名無しさん mailto:sage [2012/03/23(金) 01:11:21.63 ]
- まぁ正直経路探索するならブレッドクラムかA*がいいんじゃね?
- 665 名前:デフォルトの名無しさん mailto:sage [2012/03/23(金) 01:13:47.52 ]
- 右手沿いはメモリ確保とかいらないし次の状態遷移が確定してるので入門向け
- 666 名前:デフォルトの名無しさん mailto:sage [2012/03/23(金) 01:23:22.17 ]
- 誤魔化せてよかったな。
- 667 名前: ◆QZaw55cn4c mailto:sage [2012/03/23(金) 01:29:25.97 ]
- >>660
hibari.2ch.net/test/read.cgi/tech/1311089619/847 ideone.com/64tHG
- 668 名前:デフォルトの名無しさん mailto:sage [2012/03/23(金) 10:28:42.28 ]
- バグってんじゃん
- 669 名前: ◆QZaw55cn4c mailto:sage [2012/03/23(金) 12:30:55.72 ]
- >>668
それはどこでしょうか? 上記 ideone.com/64tHG の "#2 show" をクリックしていただければ、一応、迷路の作成と出口探索結果を表示します。
- 670 名前:デフォルトの名無しさん mailto:sage [2012/03/23(金) 13:45:00.25 ]
- マルチスレッドはvolatileじゃダメ
キャッシュコヒーレンシ的にメモリバリアとかしないとダメ
- 671 名前:デフォルトの名無しさん [2012/03/23(金) 14:00:39.41 ]
- うそつけカス
- 672 名前:デフォルトの名無しさん mailto:sage [2012/03/23(金) 14:09:54.37 ]
- >>670
kwsk
- 673 名前:デフォルトの名無しさん mailto:sage [2012/03/23(金) 14:12:41.95 ]
- アトミックな操作にするのと
最適化で読み込みタイミングが移動したり省略されたりするのと 別の話なんじゃないの?
- 674 名前:デフォルトの名無しさん mailto:sage [2012/03/23(金) 14:15:35.37 ]
- volatile registerと言えば、z80のリフレッシュレジスタなんかが該当するな。
でも、直接割り当てられるわけじゃないから何らかのコンパイラ側の支援が必要だけど。
- 675 名前:デフォルトの名無しさん mailto:sage [2012/03/23(金) 14:20:02.28 ]
- >>674
お前はアホ。
- 676 名前:デフォルトの名無しさん mailto:sage [2012/03/23(金) 14:28:52.70 ]
- lmgtfy.com/?q=volatile+%E3%83%9E%E3%83%AB%E3%83%81%E3%82%B9%E3%83%AC%E3%83%83%E3%83%89
javaとは違うのよ
- 677 名前:デフォルトの名無しさん mailto:sage [2012/03/23(金) 14:33:54.46 ]
- javaと同じとか、勘違いしてるだけだろ。
|

|