- 1 名前: ◆h6A7qfFFu6 mailto:sage [2008/12/29(月) 11:05:07 ]
- スレを勃てるまでもない低俗な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/
- 741 名前:デフォルトの名無しさん mailto:sage [2009/01/04(日) 23:09:05 ]
- 高校の数学の教科書でも見直せばいいんじゃね?
- 742 名前:デフォルトの名無しさん mailto:sage [2009/01/04(日) 23:26:06 ]
- 普通に考えて慣性モーメントが最低の軸、つまり重心を通る軸じゃね?
- 743 名前:デフォルトの名無しさん mailto:sage [2009/01/04(日) 23:35:11 ]
- なるほど。
でも軸なの? 重心を中心にして点対称に回転させるんじゃないの? ともかく「三角形の中心」を決めないと。 内心?外心?垂心?重心?傍心?
- 744 名前:デフォルトの名無しさん mailto:sage [2009/01/04(日) 23:41:57 ]
- 中心が決まったら、あとは「アフィン変換」「回転行列」「クォータニオン」辺りで。
- 745 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 00:38:14 ]
- >>737
>三角形の中心 中心は5つほどありますが、どれになさいますか
- 746 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 00:44:06 ]
- 傍心は中心じゃないだろw
- 747 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 00:48:56 ]
- >>746
三角形の中心(さんかくけいのちゅうしん)とは、任意の三角形から一意的に求めることができる点の総称である。単に心または芯とも呼ばれる。 「五心」と呼ばれる点(内心・外心・重心・垂心・傍心)が一般的に広く知られている。
- 748 名前:デフォルトの名無しさん [2009/01/05(月) 00:59:00 ]
- 下の例のような文字列や小数などが入り混じったchar型の変数の配列があります。
これから小数だけを取り出してファイル出力したいのですが、何かいい方法はあるでしょうか? char name[0]=frame char name[1]=0.123 ←取り出したい char name[2]=23 char name[3]=1.234 ←取り出したい
- 749 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 00:59:39 ]
- まるちうぜえ
- 750 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 01:06:24 ]
- >文字列や小数などが入り混じったchar型の変数の配列
- 751 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 01:19:51 ]
- 取り出す前に、どうやって入れたのか知りたい
- 752 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 01:27:54 ]
- そうだな
小数入れる前に構造体にしてフラグ立てとけよカス
- 753 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 01:45:18 ]
- for(int i = 0; i < 4; i++){
if(name[i].isFloat()) name[i].toFile(); }
- 754 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 02:49:45 ]
- 規格書高ぇ・・・
- 755 名前:デフォルトの名無しさん [2009/01/05(月) 06:54:50 ]
- Unicode対応プログラムの作成練習してるけどしょっぱなからつまずいた…
#include<stdio.h> #include<tchar.h> #define _UNICODE #define UNICODE int main(void){ TCHAR uni[]=_T("UnicodeTest"); printf("%s\n",uni); return 0; } 上記のコードを実行するとUしか出力されません。原因はUの2バイト目が00なので ヌル文字と勘違いしてしまうからだと予想しますがforで回すしか回避方法はないのでしょうか?
- 756 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 07:10:05 ]
- つ wprintf
- 757 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 07:20:54 ]
- TCHAR 使うんなら _tprintf だろ・・・。
それに、_UNICODE を定義するのなら tchar.h をインクルードする前っつーか、 プロジェクトファイルの設定をいじれ。 _MBCS が定義されてるかもしんないし、混乱の原因になる。
- 758 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 07:24:04 ]
- (^ー゚)テヘッ
- 759 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 08:29:01 ]
- か わ い い
- 760 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 11:46:49 ]
- >>754
X3010なら俺の上でアンアン言ってるぜ
- 761 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 13:15:32 ]
- それ規格書じゃなくて魔導書じゃね?
- 762 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 20:33:37 ]
- インデックスか
- 763 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 20:34:35 ]
- vs2003を使っている者です。
ヘッダで構造体を struct fff{ double a; double b; double c; double d; double e; double f; double g; double h; double i; double j; }; struct fff ggg[2]={ {0,0,0,0,0,0,0,0,0,0}, {0,0,0,0,0,0,0,0,0,0} }; こういった形で宣言・初期化しているのですが、 double型のメンバの数を11個以上に増やすと、この構造体と全く関係のない処理でおかしな動きをしてしまうのです。 例えば、プログラム内で全く使われない、double型のメンバ数11以上の構造体を作ったとしても、どこかの演算に影響を及ぼしてしまうようです。 これは一つの構造体の大きさに上限があるということなのでしょうか? また、これを解決し、多くのメンバを持つ構造体を宣言する方法などがあれば教えてください。
- 764 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 20:45:14 ]
- >>762
イ、禁書目録?
- 765 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 20:53:17 ]
- >>763
>ヘッダで構造体を宣言・初期化している 「そのヘッダをいろんなファイルで読み込んでいる」に500ガバス
- 766 名前:デフォルトの名無しさん [2009/01/05(月) 21:02:01 ]
- >>756
>>757 サンクス
- 767 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 21:03:27 ]
- レイテンシ
- 768 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 21:06:07 ]
- >>763
メンバ数の上限がそんなに低いところにあるとは考えられない。何か勘違いをしていると思われ。 問題の再現する最小限のソースを貼りたまえ。
- 769 名前:デフォルトの名無しさん [2009/01/05(月) 21:08:49 ]
- 0x0040とは一体どういう意味なのでしょうか?
0xがつくから16進数かと思ってたけど違いますよね? あとif文で、 変数 & 0x0040 == 0 とかいった文がありますが これはどういう意味なのでしょうか? この場合、変数には絶対0x0040のような値がはいるということでしょうか また==0 で何を判定しているのでしょうか? よろしくお願いいたします。
- 770 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 21:11:11 ]
- テキストファイルを読み込み、行数を数えるプログラムを作れ(C言語)
との課題が出ました。 テキストファイルを読み込み配列(構造体で定義)に格納するところまでできたのですが 行数をカウントするプログラムがうまくいきません。 現在 char *strText(構造体で定義) for (Count = 0; Count < TextVol(構造体で定義); i++) { if (strText[Count] == 0x0D) EnterCount++; } という感じです。 これだと 「abc□ d□ ef□ g」 (□==改行) という行は3行とカウントされてしまいます。(希望は4行) ちなみにテキストファイルを読み込む関数と、カウントする関数は別で作れといわれています。 どうすれば最後
- 771 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 21:11:54 ]
- > 0xがつくから16進数かと思ってたけど違いますよね?
まず、どうしてそう思うのか説明してくれ
- 772 名前:770 mailto:sage [2009/01/05(月) 21:12:06 ]
- とぎれてしまいました
どうすれば最後の行が空でない場合カウントさせることができるでしょう?
- 773 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 21:13:30 ]
- >>772
+1すればいいじゃん。
- 774 名前:770 mailto:sage [2009/01/05(月) 21:22:28 ]
- >>773
その場合、 「abc□ d□ ef□ g□ 」 を5行とカウントしてしまいます。 空白行はカウントせずに最終行が空白行じゃない場合のみカウントさせたいのですが、いい方法はありませんか?
- 775 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 21:26:09 ]
- >>769
0x0040は16進数で、10進数にすると64 >この場合、変数には絶対0x0040のような値がはいるということでしょうか 何も入りません >また==0 で何を判定しているのでしょうか? >よろしくお願いいたします。 面倒だからいやだ、以上
- 776 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 21:27:57 ]
- >>775
文字コード あるいは アスキーコード でググってみ
- 777 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 21:29:18 ]
- >>765
>>768 先程いろいろ弄っていたら何故かこのバグが起きなくなってしまいました。 再現することすらできなくなってしまいました。 昨晩からずっと悩まされていた問題だったのに何故なんでしょう・・・ でもメンバ数を増やしただけで全く関係ないような演算におかしな結果が出たのは確かなんですよ 何はともあれ解決したので良かったです。助言ありがとうございました。
- 778 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 21:31:24 ]
- >>773
行頭の1文字目が改行かどうかも判断したら良いんじゃね ちょっと疑問なのは、最終行じゃなくて途中に空行があったらどうするつもり?
- 779 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 21:31:40 ]
- >>774
最終行が空と言うか、改行で終わってるだけだから、 それを判定すれば・・・
- 780 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 21:32:15 ]
- >>776
ただのビットフラグの判定がどう関係するんだ?
- 781 名前:770 mailto:sage [2009/01/05(月) 21:37:58 ]
- >>778
すみません TextVol はテキストファイルの大きさなので、 ただいまのカタチですと「行の先頭」との比較ができません。 途中の空白行がカウントされるのは問題ありません。 >>779 現在ですと 「abc□ d□ ef□ g□ 」 が4行 「abc□ d□ ef□ g」 が3行とカウントされてしまうのでソコをなおしたいです。
- 782 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 21:41:37 ]
- >>780
すまん、0x0040だけみて文字の判定かと思った。
- 783 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 21:49:02 ]
- >>781
改行文字の次の文字が、次の行の先頭だよ
- 784 名前:769 [2009/01/05(月) 21:50:51 ]
- すみません、お願いします・・・
- 785 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 21:53:17 ]
- >>781
ファイルの終端に改行文字が何文字連続してるか数えれば、 最後に空白行が何行あるかわかる
- 786 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 21:54:22 ]
- >>781
そのforを抜けた後にcount番目の文字が改行文字でなければ1行増やす。
- 787 名前:785 mailto:sage [2009/01/05(月) 22:01:18 ]
- 言葉足りなかった
改行文字の数+1で空白行も含めた行数が分かる。 そこから最後の空白行だけ引けばいい んで最後に空白行が何行あるかは785
- 788 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 22:01:24 ]
- お前ら、Cの演算子の優先順記憶してるの?
- 789 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 22:04:34 ]
- >>784
まず2進数⇔10進数⇔16進数の変換ができるようになれ そしたら「C言語 ビットシフト」でぐぐれ
- 790 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 22:06:10 ]
- ビットシフトじゃなくてビットフラグ
- 791 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 22:06:28 ]
- >>788
時々一覧を見るよ。 基本的には、括弧とかで確実にするよ。
- 792 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 22:08:15 ]
- >>788
可読性を上げるためにも括弧をつかいます
- 793 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 22:12:31 ]
- >>785
>>787 参考にしてもう少し考えて見ます。ありがとうございます >>786 あ、これでいけそうですね?やってみます。
- 794 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 22:33:48 ]
- 年初にあたり優先順記憶しようと思ったけど、サンプル数0/3(自分含む)という事で
無理そうだから止めたっと。
- 795 名前:デフォルトの名無しさん [2009/01/05(月) 22:34:22 ]
- 0x0001 & 0x1000 これの値は0 なのか、それとも0000000000000000 なのでしょうか?
また、同じく 0x1000 & 0x1000 の値は、0001000000000000なのか 1000000000000 どちらなのでしょうか?
- 796 名前:763 mailto:sage [2009/01/05(月) 22:44:31 ]
- >>763,777ですが、結局また同じ問題が発生してしまいました。
今度は具体的に説明させてください。 今、ピンボールのプログラムをdirectX3Dを使って作っております。 下の構造体はある障害物の座標を表すもので、ヘッダに記述されているものです。 struct circle{ float x0; float y0; float x1; float y1; double angle; float r; float centx; float centy; }circle[]={ {-10,0,10,0,PI,0,0,0,0} {0,0,0,0,0,0,0,0} }; この中に新しくdouble qwerty(変数名は適当)を作ります。 そしてこの初期化部分でqwertyに0を代入します。 すると、「特定の壁の当たり判定が消えてボールがすり抜ける」という事態が起きてしまいます。 その壁の当たり判定というのはこの構造体とは全く関係のないものです。 次にdouble qwertyのdoubleをintに変えてみます。 すると、先程のバグは起きなくなります。 また、この上記の文をコピーして、構造体の名前を適当なものに変えます。 そして同様にdouble型のメンバを増やすと同じバグが発生してしまいます。プログラムで一切使われていない構造体なのにも関わらずです。 以上のことから考えると、構造体の大きさが原因で、「ある一定以上の大きさの構造体を宣言するとバグが発生する」ということになっているのではないかと思われます。 いったいこれはどういうことなのでしょうか?全く見当がつきません。
- 797 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 22:44:47 ]
- >>795
君には早すぎるってのがわからんかな ここで説明したところで理解できないよ 0と0000000000000000は同じ 0001000000000000と1000000000000も同じ
- 798 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 22:45:51 ]
- どっちも同じじゃん。
普段 10 進数で 123 とか 372 とか言ってるけど、 それより上の桁は、実際には全て 0 で埋められているけど 単に省略して表現しているに過ぎない。
- 799 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 22:53:22 ]
- >>796
無関係の配列やポインタを扱っている部分で バグにより適切な領域を越えた所へと書き込んだり読み込んだりしている部分があり、 その領域がたまたま qwerty のあたりにあったんだろう。 そのあたりの値が常に 0 で初期化されている時のみ たまたま変な事が起きているんだろう。 >「ある一定以上の大きさの構造体を宣言するとバグが発生する」 のではなく、 >「バグ持ちだが、qwerty がないとそれが目に見える形で現れない」 だけに過ぎない。
- 800 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 22:58:09 ]
- >>796
circle[0]の初期化で、構造体の要素数をこえてしまってるけど、 初期化でミスってない? つか、これってコンパイルできてるの?
- 801 名前:763 mailto:sage [2009/01/05(月) 23:05:40 ]
- >>799
ということは、この構造体に問題があるのではなく、 「当たり判定が消えてしまう特定の壁」の方にあるということなのでしょうか。 >適切な領域を越えた所へと書き込んだり読み込んだりしている部分 適切な領域を越えたところを弄ってしまうというのは例えばどのような処理をしたときに起こるんですか? >>800 宣言部分と初期化部分を分離して struct circle circle[2]={ {-10,0,10,0,PI,0,0,0,0}, {0,0,0,0,0,0,0,0} }; としても結果は同じでした。 >>796の記述でもコンパイルはできてます。
- 802 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 23:05:48 ]
- >>796
だからオーバーフローしてんじゃねぇの? それから、ヘッダでグローバル変数を宣言するのは勝手だが、externを使うような機構にしろ。 そんで何度も初期化されるような記述はやめろ。 DirectXとか以前に、C言語の基本だぞ。
- 803 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 23:10:34 ]
- >>801
>ということは、この構造体に問題があるのではなく、 >「当たり判定が消えてしまう特定の壁」の方にあるということなのでしょうか。 その可能性もあるが、そうでない可能性もある。 バッファオーバーフローは全く予期しない所に影響を与えうるからな。 >適切な領域を越えたところを弄ってしまうというのは例えばどのような処理をしたときに起こるんですか? int n[10]; if (n[100] == 0) { n[1000] = 9; } int a; n[a] = 10;
- 804 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 23:12:18 ]
- >>801
いや、言いたいのは circleの要素はx0〜centyの8個でしょ でも circle[0]の初期化で9個の値を入れてるってこと
- 805 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 23:13:58 ]
- 適当に今サンプルコード書いただけなんじゃね?
普通要素多かったらコンパイル通らんだろ。
- 806 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 23:15:32 ]
- バグとか以前の問題だな。
- 807 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 23:16:56 ]
- >>805
>>796の書き方からして、コピペしたんじゃないかと思って。
- 808 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 23:20:49 ]
- >>802
これが何度も初期化されるような記述だということがまずわかっていませんでした。 externでやってみます。 >>803 ありがとうございます。 ソースを確認してみます。 >>804 すいません、いろいろ弄っている途中だったのでコピペミスってしまいました ちゃんと8個の値で初期化しても駄目でした。
- 809 名前:802 mailto:sage [2009/01/05(月) 23:24:35 ]
- >>808
言い方がきつかったが、要は構造体を定義したヘッダファイル内でその変数も宣言・初期化するってことは、 そのヘッダファイルを読み込んだソースファイルの各々について宣言・初期化が行われるだろ? ヘッダでそういう書き方をしてるってことは、そういうことが起こっているんじゃないかって思ったわけ。 断定的に書いちゃったけど、自分で確かめてみて。
- 810 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 23:33:03 ]
- >>809
なるほど。確かめてみます。 助言ありがとうございました。
- 811 名前:763 mailto:sage [2009/01/06(火) 00:24:28 ]
- 原因が見つかりました。
宣言した配列の大きさ以上の領域を弄っていたようです。 そこを直したところ解決しました。 みなさんありがとうございました。助かりました。
- 812 名前:デフォルトの名無しさん [2009/01/06(火) 00:43:17 ]
- こちらで質問させて頂きます。
5年ほど、ACCESSのVBAでOracleやMySQLのDB操作を行い、 生産管理ツールなどを作成してきました。 そろそろ、C言語にも手を出してみようと思い、現在 C++Bilderか、VC++のどちらにしようか迷っています。 やりたいことは、ACCESSで言うフォーム上からDBのデータを表示したり、 進捗を入力したりしたいと思っています。 雑な質問で恐縮なのですが、C++Bilder2009とVC++では どちらがとっつきやすいでしょうか?
- 813 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 00:50:03 ]
- >>812
Bilderじゃね?
- 814 名前:813 mailto:sage [2009/01/06(火) 00:50:55 ]
- >>813
Bilder? Builderのことだな。
- 815 名前:812 mailto:sage [2009/01/06(火) 00:59:41 ]
- すいません。Builderでしたね。。。
確かに、SQLServer使ってるわけでもないので、 VC++である必要もなさそうですね。
- 816 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 01:16:10 ]
- 「プログラマーは報酬さえ得ることが出来ればどんな事でもするって言うのか!」
- 817 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 01:27:03 ]
- >>816
便所でも掃除する
- 818 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 01:27:51 ]
- >>817
舌で
- 819 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 01:30:23 ]
- >>818
報酬による
- 820 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 06:00:40 ]
- >>819
ecx.images-amazon.com/images/I/5102gOf6cgL._SS500_.jpg 君の報酬はコレだ 働いてくれるな?
- 821 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 06:08:19 ]
- >>820
実は表紙だけで、中身は普通のJIS X3010なんだろ?
- 822 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 06:11:07 ]
- そっちのほうがよっぽどほしいわww
- 823 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 06:33:57 ]
- >>821
それ、むしろ欲しいよ!
- 824 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 11:16:19 ]
- なんでC言語なんて覚えてんだろ・・?
- 825 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 12:45:28 ]
- 2chブラウザ作りたいんですが、
他の2chブラウザって、書き込み処理とかは、ここのフォームを偽装して作ってるんですか?
- 826 名前:825 mailto:sage [2009/01/06(火) 12:48:43 ]
- pc11.2ch.net/test/read.cgi/tech/1180406037/
ここに、 20 :デフォルトの名無しさん:2007/06/10(日) 21:26:21 まじめな話DATをダウンロードして表示して保管して 書き込みはbbs.cgiを呼んでやるだけでしょ大雑把に言って って書いてましたが、そうなんですか?
- 827 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 13:03:52 ]
- >>826
基本、そんな感じ。それにプラスするとしたら、画像表示、検索、あぼん、コテ管理、DAT管理、書き込み管理と言ったところか。 書き込みフォームは偽装するよりもオリジナルで作った方が使い易いと思われ。 あー、Cookieの管理とか板トップ表示なんかも必要か。
- 828 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 13:06:43 ]
- >>825
こっちのほうが詳しいぞ。 pc11.2ch.net/test/read.cgi/tech/1224449899/
- 829 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 13:23:18 ]
- 暇でライブラリでも作ろうかと思ってるんで何かお題ください
- 830 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 13:26:49 ]
- >>829
Cでスパイダーツール書くのに使えるヤツ
- 831 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 13:28:54 ]
- スパイダーツールって何?
- 832 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 13:33:25 ]
- >>831
こんな www.amazon.co.jp/dp/4873111870
- 833 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 13:52:48 ]
- なるほど
あんまり興味ないけど作って見ます
- 834 名前:デフォルトの名無しさん [2009/01/06(火) 22:25:03 ]
- デバッグ作業でよく発見する間違いってどんなのでしょうか?
- 835 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 22:34:20 ]
- >>834
コーディング段階で発見できない間違いの殆ど全て。
- 836 名前:デフォルトの名無しさん [2009/01/06(火) 22:42:28 ]
- どういうのが発見できないのでしょうか?
- 837 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 22:43:50 ]
- というか全部発見しようとするのがデバッグってもんじゃないかww
- 838 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 22:45:50 ]
- 仕様の誤解釈、typo、不注意、思い込み、&c...
- 839 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 23:06:11 ]
- デバッガのバグとかも
- 840 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 23:57:59 ]
- >>834
配列とかポインタでアクセスしたらいけないところにアクセスしてるのが多い
- 841 名前:デフォルトの名無しさん [2009/01/07(水) 01:35:17 ]
- C++(gcc4.1.2使っています)で、
下記のJAVAのように、 メソッド内で同一クラス内のメソッドを利用するにはどうしたらよいのでしょうか。 public class Greeting { public void sayHello() { this.hello(); } private void hello() { System.out.println("Hello"); } }
- 842 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 01:37:40 ]
- this->hello();}
- 843 名前:デフォルトの名無しさん [2009/01/07(水) 01:43:30 ]
- >>842
できました。ありがとうございます。
- 844 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 10:19:30 ]
- 質問です( VC++ 2008EE )
クラステンプレート使用時、staticなconstメンバ変数の定義でエラーになってしまいます。 <ヘッダー> template <typename T> class samp{ private: T number; static const double db; public: ... void disp() const { std::cout << "db = " << db << std::endl; } }; <cpp> template <typename T> const double samp<T>::db = 1.35; このクラスのオブジェクトを生成して disp() をコールすると db の外部参照が未解決と出てしまいます。 どう修正すべきでしょうか?
- 845 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 10:29:20 ]
- 定義が無いもの、定義書けばいいだろ
- 846 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 10:43:00 ]
- VS2008で問題出ないけどなあ、それ。
- 847 名前:844 mailto:sage [2009/01/07(水) 11:00:00 ]
- >>845
<cpp>での定義の事でしょうか? const double samp<int>::db = 1.35; const double samp<char>::db = 1.35; とかやれば通るんですがテンプレートの意味ないですよね・・・ >>846 マジですか?! クラスの宣言と定義だけなら通るんですが、main にて samp<int> smp; smp.disp(); // ここでエラー になってしまいます
|

|