- 1 名前:デフォルトの名無しさん [2007/02/01(木) 23:08:46 ]
- このスレは標準Cのみの限定スレです。
まず問題を冷静に吟味してCの話か否かをはっきりさせてから質問しましょう。 質問する前には最低限検索を。 エラー(警告含む)が起きたのならばエラーメッセージを書きましょう。 C FAQ 日本語訳 www.kouno.jp/home/c_faq/ Cプログラマ必読 ・プログラミング言語C(通称 K&R) www.amazon.co.jp/exec/obidos/ASIN/4320026926/250-7563469-9920244 他の過去ログはここに nssearch.hp.infoseek.co.jp/clang/ 前スレ 【ISO/ANSI/JIS】 C言語なら俺に聞け! Part 130 pc10.2ch.net/test/read.cgi/tech/1159613789/ GUIなどの標準Cではできない事の質問,ソース丸投げ、宿題、書籍 は 専門の別スレッド↓があるのでそこへさようなら。 【初心者歓迎】C/C++室 Ver.34【環境依存OK】 pc10.2ch.net/test/read.cgi/tech/1169039760/ C/C++の宿題を片付けます 82代目 pc10.2ch.net/test/read.cgi/tech/1169575464/
- 754 名前:デフォルトの名無しさん [2007/07/17(火) 19:45:11 ]
- C言語なら俺に聞け(入門篇) Part 16
pc11.2ch.net/test/read.cgi/tech/1184003625/
- 755 名前:c言語初心者 [2007/07/17(火) 19:50:54 ]
- ここならしていただけるんですか??
- 756 名前:デフォルトの名無しさん [2007/07/17(火) 19:53:03 ]
- >>755
>>751 > 学校の問題 C/C++の宿題を片付けます 93代目 pc11.2ch.net/test/read.cgi/tech/1184506311/
- 757 名前:デフォルトの名無しさん mailto:sage [2007/07/17(火) 19:55:22 ]
- ただし回答者の気が向いたら
気に入られなければスルーされる
- 758 名前:デフォルトの名無しさん mailto:sage [2007/07/18(水) 05:49:19 ]
- スレ立てられなかった。誰かキボン。
スレタイ: 【初心者歓迎】C/C++室 Ver.40【環境依存OK】 エスケープシーケンスやWin32APIなどの環境依存な物でもOK。 ただしその場合、質問者は必ず、環境を書きましょう。 age 推奨ですが、自己判断で。 ◆ 前スレ: 【初心者歓迎】C/C++室 Ver.39【環境依存OK】 pc11.2ch.net/test/read.cgi/tech/1182740506/ ◆ アップローダー (質問が長い時はココ使うと便利) kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/joyful.htm
- 759 名前:デフォルトの名無しさん mailto:sage [2007/07/18(水) 11:05:17 ]
- >>758
何故このスレで……
- 760 名前:デフォルトの名無しさん mailto:sage [2007/07/18(水) 13:58:47 ]
- もう立ってるね
- 761 名前:デフォルトの名無しさん [2007/07/19(木) 01:02:10 ]
- cの入門書とポインタ攻略本を読んでほぼ理解できたんだけど次に何読めばいいかわからん
何かお勧めの参考書教えてください
- 762 名前:デフォルトの名無しさん mailto:sage [2007/07/19(木) 01:05:40 ]
- アルゴリズムとデータ構造
- 763 名前:デフォルトの名無しさん mailto:sage [2007/07/19(木) 01:10:14 ]
- 30日でできる! OS自作入門
- 764 名前:デフォルトの名無しさん mailto:sage [2007/07/19(木) 01:13:03 ]
- K&R
- 765 名前:デフォルトの名無しさん mailto:sage [2007/07/19(木) 01:41:38 ]
- アルゴリズム辞典
- 766 名前:デフォルトの名無しさん mailto:sage [2007/07/19(木) 10:10:47 ]
- >>761
>読んでほぼ理解できたんだけど 本当なら大したもんだけど、 >cの も少しケースセンシティブになろうね。
- 767 名前:デフォルトの名無しさん mailto:sage [2007/07/19(木) 21:12:03 ]
- ケースセンシティブにもう少しもないものだ
- 768 名前:デフォルトの名無しさん mailto:sage [2007/07/20(金) 01:15:22 ]
- たしかにw
まぁ、ポインタは理解したんだろう。 面倒なのはポインタよりも、ポインタの絡んだ型宣言の方だから。
- 769 名前:デフォルトの名無しさん mailto:sage [2007/07/20(金) 01:38:29 ]
- えーとintの配列へのポインタを受け取って関数へのポインタへのポインタを返す関数・・・
- 770 名前:デフォルトの名無しさん mailto:sage [2007/07/20(金) 11:12:34 ]
- typedef って便利だよな。
- 771 名前:デフォルトの名無しさん mailto:sage [2007/07/20(金) 13:33:33 ]
- 俺は、typedef void (*func)(int)っていうのを見て
何をtypedefしてんだ?と思った時期もありました。
- 772 名前:デフォルトの名無しさん mailto:sage [2007/07/20(金) 16:53:23 ]
- void (*const *foo(const int (*p)[10]))(void (T::*)(int (U::*)()));
- 773 名前:デフォルトの名無しさん mailto:sage [2007/07/20(金) 17:03:50 ]
- typedef様様だな
- 774 名前:デフォルトの名無しさん mailto:sage [2007/07/20(金) 17:16:19 ]
- >>771
それ何をtypedefしてるの? 初めて見た
- 775 名前:デフォルトの名無しさん mailto:sage [2007/07/20(金) 17:29:32 ]
- >>774
intの引数が1つで値を返さない関数を func にtypedef 例えば、、、 void foo(int); func f = foo; とか
- 776 名前:デフォルトの名無しさん mailto:sage [2007/07/20(金) 17:38:57 ]
- なるほどー
自分に使う機会が来るかはわからんけど覚えておこう thx
- 777 名前:デフォルトの名無しさん [2007/07/20(金) 18:12:25 ]
- C言語をはじめたばかりであまりわからないのですが、
ビットシフトはなんの役に立つのでしょうか?
- 778 名前:デフォルトの名無しさん mailto:sage [2007/07/20(金) 18:13:29 ]
- typedef int (U::*FP1)();
typedef void (T::*FP2)(FP1); typedef void (*FP3)(FP2); const FP3* foo(const int p[][10]);
- 779 名前:デフォルトの名無しさん mailto:sage [2007/07/20(金) 20:18:26 ]
- >>777
ビットフラグのクリアとか?
- 780 名前:デフォルトの名無しさん mailto:sage [2007/07/20(金) 20:45:24 ]
- >>777
ビットの配列を作るときに使う
- 781 名前:デフォルトの名無しさん mailto:sage [2007/07/20(金) 20:45:55 ]
- 「作る」じゃなくて「操作する」だな。すまん。
- 782 名前:デフォルトの名無しさん mailto:sage [2007/07/20(金) 21:50:27 ]
- >>779-781
ビットシフトはなんの役に立つのでしょうか? でぐぐれ
- 783 名前:デフォルトの名無しさん mailto:sage [2007/07/20(金) 21:56:19 ]
- そういえばどうしてローテートはないんだろ
- 784 名前:デフォルトの名無しさん mailto:sage [2007/07/20(金) 22:20:58 ]
- >>777
コレ見るの、3回目か4回目くらいなんだけど、ギャグかなんかなの?
- 785 名前:デフォルトの名無しさん mailto:sage [2007/07/20(金) 23:02:06 ]
- 不定期テンプレ
- 786 名前:デフォルトの名無しさん mailto:sage [2007/07/20(金) 23:14:02 ]
- ただの荒らし
あるいは風物詩 あるいは新参の受ける洗礼
- 787 名前:デフォルトの名無しさん mailto:sage [2007/07/21(土) 00:56:47 ]
- >>783
ローテートをサポートしない CPU も多いんじゃね? 知らんけど。
- 788 名前:デフォルトの名無しさん mailto:sage [2007/07/21(土) 01:07:00 ]
- >>784
少ないなw
- 789 名前:デフォルトの名無しさん mailto:sage [2007/07/21(土) 02:04:14 ]
- &a->bって&(a->b)か(&a)->bかどっち?
- 790 名前:デフォルトの名無しさん mailto:sage [2007/07/21(土) 02:09:29 ]
- 「演算子 順位」とかでぐぐれ
- 791 名前:デフォルトの名無しさん mailto:sage [2007/07/21(土) 02:19:04 ]
- &(a->b)ですね。ありがとう。
- 792 名前:デフォルトの名無しさん mailto:sage [2007/07/21(土) 02:25:36 ]
- つか、やってみりゃ分かるだろ。
- 793 名前:デフォルトの名無しさん mailto:sage [2007/07/21(土) 02:39:22 ]
- その態度は良くない。
・規格を読んで正しい挙動を把握する ・実際に処理系で実験してみる ・結果が規格と異なった場合パッチを書いてしかるべき所に送りつける(オプション)
- 794 名前:デフォルトの名無しさん mailto:sage [2007/07/21(土) 03:25:22 ]
- 規格読んで来て、理解して&(a->b)を常に&a->bとか書くように
なる人と仕事組んだら俺泣きそうw
- 795 名前:デフォルトの名無しさん mailto:sage [2007/07/21(土) 04:28:59 ]
- &a->b は普通に書くだろw
- 796 名前:デフォルトの名無しさん mailto:sage [2007/07/21(土) 04:41:50 ]
- >・規格を読んで正しい挙動を把握する
=「演算子 順位」とかでぐぐれ >・実際に処理系で実験してみる =つか、やってみりゃ分かるだろ。
- 797 名前:デフォルトの名無しさん mailto:sage [2007/07/21(土) 04:45:12 ]
- 正しい挙動を把握してから実験で確認するのと、
実験して結果を見て予想するのは、大きな違いがある。
- 798 名前:デフォルトの名無しさん mailto:sage [2007/07/21(土) 05:26:51 ]
- その態度はよくない。
実験して結果を見て法則を導くスタイルが無いと。
- 799 名前:デフォルトの名無しさん mailto:sage [2007/07/21(土) 05:30:11 ]
- はいはい、そうですね
- 800 名前:デフォルトの名無しさん mailto:sage [2007/07/21(土) 05:48:50 ]
- 実験した後に確かめた方がいい。
- 801 名前:デフォルトの名無しさん mailto:sage [2007/07/21(土) 10:00:56 ]
- 演算子の優先順位は、処理系依存ってことはないだろうから、実験でいいんじゃね?
- 802 名前:デフォルトの名無しさん mailto:sage [2007/07/21(土) 10:02:37 ]
- 規格読む→実験する→2chで煽りつつ確かめる
- 803 名前:デフォルトの名無しさん mailto:sage [2007/07/21(土) 10:11:19 ]
- 規格読む前に実験した方が実感しやすいな。
- 804 名前:デフォルトの名無しさん mailto:sage [2007/07/21(土) 10:36:58 ]
- その通りだ。実験して、壁にぶち当たって、その壁をぶっ壊せ!
フラグメンテーションエラーで、メモリーもぶっ壊せ! そして泣きながら規格読んで実感だ!
- 805 名前:デフォルトの名無しさん mailto:sage [2007/07/21(土) 11:26:38 ]
- >>804
>そして泣きながら規格読んで実感だ! お疲れ様です。
- 806 名前:デフォルトの名無しさん mailto:sage [2007/07/21(土) 11:51:31 ]
- C++ だが、export は色んな意味で泣ける。
- 807 名前:デフォルトの名無しさん mailto:sage [2007/07/21(土) 12:27:13 ]
- 俺の胸でなけ
- 808 名前:デフォルトの名無しさん mailto:sage [2007/07/21(土) 13:02:06 ]
- 俺の下であがけ
- 809 名前:デフォルトの名無しさん mailto:sage [2007/07/21(土) 14:42:57 ]
- 実験だけじゃ優先順位なのか結合の方向なのか解らない、と。
まぁ、&a->bくらいなら、どっちでもいいけど。
- 810 名前:デフォルトの名無しさん mailto:sage [2007/07/21(土) 16:25:12 ]
- &a->b が (&a)->b と見做されるんだとしたら
皆 a.b と書くと思うんだわ。
- 811 名前:デフォルトの名無しさん mailto:sage [2007/07/22(日) 00:30:44 ]
- &a.bじゃないか?
- 812 名前:デフォルトの名無しさん mailto:sage [2007/07/22(日) 00:31:41 ]
- 終電まで仕事してて疲れてた。>>811はお願いだから忘れて
- 813 名前:デフォルトの名無しさん mailto:sage [2007/07/22(日) 10:05:19 ]
- CD-R に保存しました
- 814 名前:デフォルトの名無しさん mailto:sage [2007/07/24(火) 03:59:19 ]
- 石版に刻みました
- 815 名前:デフォルトの名無しさん mailto:sage [2007/07/24(火) 09:46:04 ]
- DNAに移植しました
- 816 名前:デフォルトの名無しさん mailto:sage [2007/07/24(火) 10:10:45 ]
- アカシックレコードに刻まれました。
- 817 名前:デフォルトの名無しさん mailto:sage [2007/08/01(水) 00:15:00 ]
- C++ の STL に感動しました
C言語で STL に似たことをしたいと思ったらどうすれば良いですか?
- 818 名前:デフォルトの名無しさん mailto:sage [2007/08/01(水) 00:16:19 ]
- C++に乗り換える。
- 819 名前:デフォルトの名無しさん mailto:sage [2007/08/01(水) 00:17:24 ]
- やっぱりそれが確実ですよね
- 820 名前:デフォルトの名無しさん mailto:sage [2007/08/01(水) 00:20:58 ]
- マクロを使う。
- 821 名前:デフォルトの名無しさん mailto:sage [2007/08/01(水) 02:11:51 ]
- そういえば、templateが使えない時代にはgeneric.hってのがあったな
- 822 名前:デフォルトの名無しさん mailto:sage [2007/08/01(水) 21:08:58 ]
- >>817
こんなんあった。かなりSTLに近いんじゃないか? マクロを使ってるからデバッグがむずかしそうだが >sourceforge.jp/projects/cstl >CSTLは、C言語で使えるC++のSTLライクなコンテナライブラリです。 >vector, deque, list, set, multiset, map, multimap, stringを提供します。
- 823 名前:デフォルトの名無しさん mailto:sage [2007/08/02(木) 10:16:24 ]
- FILE *t=tmpfile();
で作成したtを fclose(t); してもいいですか? なんか危なくて、こわいです。
- 824 名前:デフォルトの名無しさん mailto:sage [2007/08/02(木) 10:24:04 ]
- なんで危ないんだよw
まあ、またその内容を使うことがあるなら閉じちゃだめだが。
- 825 名前:デフォルトの名無しさん mailto:sage [2007/08/02(木) 10:44:31 ]
- ええ!
fclose(t)ってやってよかったの?
- 826 名前:デフォルトの名無しさん mailto:sage [2007/08/02(木) 10:56:00 ]
- C言語辞典見てみたけど、やっていいみたい。
- 827 名前:デフォルトの名無しさん mailto:sage [2007/08/02(木) 11:09:09 ]
- 用がなくなったら閉じないとダメだろ。常考。
- 828 名前:デフォルトの名無しさん mailto:sage [2007/08/02(木) 11:52:56 ]
- tmpfile()は、そのファイルがクローズされたか、またはプログラムが終了したときに
自動的に削除されるファイルを生成し、そのストリームへのポインタを返す。 何も問題はない。
- 829 名前:デフォルトの名無しさん mailto:sage [2007/08/03(金) 06:35:21 ]
- 自分ならOOライクにたとえ1行で済んだとしても生成と破棄を対にして両方の関数を作る
- 830 名前:デフォルトの名無しさん mailto:sage [2007/08/03(金) 07:59:09 ]
- なら別にC使わないで他のOO使えばいいじゃん。頭かたいね。
- 831 名前:デフォルトの名無しさん mailto:sage [2007/08/03(金) 08:38:00 ]
- 生成と破棄を対にすることがOOライクだと思うくらいならそれでもいいんじゃね?
- 832 名前:デフォルトの名無しさん mailto:sage [2007/08/03(金) 09:21:23 ]
- ぷっ
- 833 名前:デフォルトの名無しさん mailto:sage [2007/08/03(金) 11:09:16 ]
- >>830
固いんじゃなく、弱いんだろう。
- 834 名前:デフォルトの名無しさん mailto:sage [2007/08/03(金) 23:43:24 ]
- >>822
面白そうなものがあるんですね GPLじゃないところもイイ! ただ、著作表示だけはしないといけないようですね
- 835 名前:デフォルトの名無しさん mailto:sage [2007/08/04(土) 00:29:40 ]
- >>834
BSDライセンスらしいから緩いでしょ
- 836 名前:デフォルトの名無しさん mailto:sage [2007/08/04(土) 00:34:52 ]
- いや修正BSDって中のファイルに書いてるじゃん
- 837 名前:デフォルトの名無しさん mailto:sage [2007/08/05(日) 18:02:02 ]
- ////(main.h)
#ifndef MAIN_H #define MAIN_H int X #endif //// ////(main.cpp) #include "main.h" #include "move.cpp" main(){ move(); } //// ////(move.cpp) #include "main.h" move(){ (Xを操作する処理) } //// ゲームプログラミングを勉強中で、大筋で感じな状況になってます。 これをコンパイルすることも実行することもできるのですが BCCでコンパイルすると、「パブリックモジュール_Xが、main.objとmove.objの 両方で定義されている」と警告されます。 これはどういうことで何が悪いのでしょうか? グローバル関数を使いながら、ファイルを分割してみたいのですがどうしたらいいのでしょうか?
- 838 名前:デフォルトの名無しさん mailto:sage [2007/08/05(日) 18:03:42 ]
- >>837
////(main.cpp) #include "main.h" #include "move.cpp"←いらなくね?
- 839 名前:デフォルトの名無しさん mailto:sage [2007/08/05(日) 18:06:54 ]
- int X;
~
- 840 名前:837 mailto:sage [2007/08/05(日) 18:15:40 ]
- >>838
それを消したら、未定義の関数moveを呼び出したなどとエラーだ出ます。 >>839 掲示板に書き込む時に簡略化したら忘れてしまいました。
- 841 名前:デフォルトの名無しさん mailto:sage [2007/08/05(日) 18:21:04 ]
- >>837
宣言と定義の区別をしっかりと。ヘッダには変数や関数の宣言だけ置くこと。
- 842 名前:デフォルトの名無しさん mailto:sage [2007/08/05(日) 18:23:31 ]
- プロトタイプ宣言でググれ
- 843 名前:デフォルトの名無しさん mailto:sage [2007/08/05(日) 20:04:20 ]
- ////(main.h)
#ifndef MAIN_H #define MAIN_H extern int X; #endif //// ////(main.cpp) #include "main.h" #include "move.h" int main(){ move(); } //// ////(move.h) #ifndef MOVE_H #define MOVE_H int move(); #endif //// ////(move.cpp) #include "main.h" int move(){ (Xを操作する処理) } ////
- 844 名前:デフォルトの名無しさん mailto:sage [2007/08/05(日) 20:05:03 ]
- まちがった
////(main.cpp) #include "main.h" #include "move.h" int X; int main(){ move(); } ////
- 845 名前:わ ◆V92eIRyEPU mailto:sage [2007/08/14(火) 14:48:11 ]
- ね
- 846 名前:拿 ◆J/ZoJAt3T2 mailto:sage [2007/08/14(火) 14:50:07 ]
- テスト
- 847 名前:デフォルトの名無しさん mailto:sage [2007/08/15(水) 23:58:55 ]
- >>843-844
俺なら、 extern int X; はmove.h側に入れて、int X; は move.cpp に入れて、 main.hは消すかな。細かいことですんませんね。 >>837 安心しなさい。あなたの方が、うちの元請けより優秀です! ちゃんと #ifndef使うあたりが。
- 848 名前:名無しさん@お腹いっぱい mailto:sage [2007/08/19(日) 03:09:14 ]
- すいません最近c言語を習い始めたのですが、円の半径(double型)をあたえて、円周の長さと
と円の面積を表示するプログラムがどうしてもできません。 どうすればよいのでしょうか?
- 849 名前:デフォルトの名無しさん mailto:sage [2007/08/19(日) 03:47:30 ]
- お前さんが書いたコードを晒せ
- 850 名前:デフォルトの名無しさん mailto:sage [2007/08/19(日) 04:10:29 ]
- その前に初心者スレに行け。
- 851 名前:デフォルトの名無しさん mailto:sage [2007/08/19(日) 10:50:59 ]
- >>848が出来ない可能性
・scanfで&忘れ、%dを指定している ・式中にint型とかを使っている ・まともに調べてない、読んでない ・円周の長さ、円の面積が分からない
- 852 名前:デフォルトの名無しさん mailto:sage [2007/08/19(日) 10:57:20 ]
- #define PI 3
- 853 名前:デフォルトの名無しさん mailto:sage [2007/08/19(日) 12:33:21 ]
- ゆとりな定義だな
- 854 名前:デフォルトの名無しさん mailto:sage [2007/08/19(日) 12:39:38 ]
- #define ENSYUURITSU 3
|

|