[過去ログ]
スレを勃てるまでもないC/C++の質問はここで 21 (1001レス)
スレを勃てるまでもないC/C++の質問はここで 21 http://toro.5ch.net/test/read.cgi/tech/1342285511/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
このスレッドは過去ログ倉庫に格納されているため、キャッシュを表示しています。
過去ログメニュー
1: デフォルトの名無しさん [sage] 2012/07/15(日) 02:05:11.71 スレを勃てるまでもない低俗なC/C++の質問はここでお願いします。 過去ログ 01 http://pc11.2ch.net/test/read.cgi/tech/1167476845/ 02 http://pc11.2ch.net/test/read.cgi/tech/1178503366/ 03 http://pc11.2ch.net/test/read.cgi/tech/1187521676/ 04 http://pc11.2ch.net/test/read.cgi/tech/1221633708/ 05 http://pc11.2ch.net/test/read.cgi/tech/1230516307/ 06 http://pc11.2ch.net/test/read.cgi/tech/1231564903/ 07 http://pc11.2ch.net/test/read.cgi/tech/1232983248/ 08 http://pc12.2ch.net/test/read.cgi/tech/1235921779/ 09 http://pc12.2ch.net/test/read.cgi/tech/1240022781/ 10 http://pc12.2ch.net/test/read.cgi/tech/1242300936/ 11 http://pc12.2ch.net/test/read.cgi/tech/1245059383/ 12 http://pc12.2ch.net/test/read.cgi/tech/1248010352/ 13 http://pc12.2ch.net/test/read.cgi/tech/1260842197/ 14 http://pc12.2ch.net/test/read.cgi/tech/1269273471/ 15 http://pc12.2ch.net/test/read.cgi/tech/1273368706/ 16 http://hibari.2ch.net/test/read.cgi/tech/1279285647/ 17 http://hibari.2ch.net/test/read.cgi/tech/1285115590/ 18 http://hibari.2ch.net/test/read.cgi/tech/1291571263/ 19 http://hibari.2ch.net/test/read.cgi/tech/1308106024/ 20 http://toro.2ch.net/test/read.cgi/tech/1316013463/ http://toro.5ch.net/test/read.cgi/tech/1342285511/1
875: デフォルトの名無しさん [sage] 2014/02/17(月) 22:45:55.43 >>872 山登り(または谷下り)するときに、頂上(谷底)でその斜面からより高い(低い)場所に向かって歩いて別の頂上(谷底)に到達できるの?君。 http://toro.5ch.net/test/read.cgi/tech/1342285511/875
876: デフォルトの名無しさん [sage] 2014/02/17(月) 22:49:16.38 複数解を持つ方程式をニュートン法で解く場合、与える初期値によって求める解が決まるそうです。 リンク先に「どの解を求めるかによって初期値を人間が適切に判断しなければならない」とありますから この部分はプログラムで自動化することは困難なのでは… http://ryuiki.agbi.tsukuba.ac.jp/~nishida/lecture/numerical/Newton.html http://toro.5ch.net/test/read.cgi/tech/1342285511/876
877: デフォルトの名無しさん [sage] 2014/02/17(月) 22:57:14.32 初期値よりも微分が手作業なのをなんとかしろよ 初期値はランダムでもいい http://toro.5ch.net/test/read.cgi/tech/1342285511/877
878: デフォルトの名無しさん [sage] 2014/02/17(月) 23:06:40.07 よく知らんがMathematicaやMapleをつかえば微分もプログラムでやれるんじゃね? http://toro.5ch.net/test/read.cgi/tech/1342285511/878
879: ◆QZaw55cn4c [sage] 2014/02/17(月) 23:15:07.61 >>877 数値微分 http://toro.5ch.net/test/read.cgi/tech/1342285511/879
880: デフォルトの名無しさん [sage] 2014/02/17(月) 23:17:28.87 どんな関数を入力しても、微分も初期値も全自動でないと。 http://toro.5ch.net/test/read.cgi/tech/1342285511/880
881: デフォルトの名無しさん [sage] 2014/02/17(月) 23:27:34.63 >>875 局所最適解山乙 http://toro.5ch.net/test/read.cgi/tech/1342285511/881
882: デフォルトの名無しさん [sage] 2014/02/18(火) 20:58:34.18 昨日ソース貼った者だけど あれからソース変えてみました。 ここから解を3つ出力できるようにできますでしょうか? int count = 0; double x = 0.0; double h, h2; for (int n = 1; n < 100; n++) { h = (i[0] * x * x * x) + (i[1] * x * x) + (i[2] * x) + i[3]; h2 = (3.0 * i[0] * x * x) + (2.0 * i[1] * x) + i[2]; h = h / h2; x = x - h; if (Math.Abs(h) < 0.000000000000001) { kaitou[count] = x; count++; n = 1; x++; } if (count > 2.0) { break; } } http://toro.5ch.net/test/read.cgi/tech/1342285511/882
883: デフォルトの名無しさん [sage] 2014/02/18(火) 21:33:57.62 自分で試してみないの? http://toro.5ch.net/test/read.cgi/tech/1342285511/883
884: デフォルトの名無しさん [sage] 2014/02/18(火) 21:43:49.58 試したけどできなかったので 何かアドバイスが欲しいのです。 http://toro.5ch.net/test/read.cgi/tech/1342285511/884
885: デフォルトの名無しさん [sage] 2014/02/18(火) 22:49:13.10 ・何を試したのか ・試した結果、どう上手く行かなかったのか のリストをまとめてからどうぞ http://toro.5ch.net/test/read.cgi/tech/1342285511/885
886: デフォルトの名無しさん [sage] 2014/02/19(水) 11:27:45.14 試したのなら >>885 > ・試した結果、どう上手く行かなかったのか これを添えて質問するのは当たり前だろう http://toro.5ch.net/test/read.cgi/tech/1342285511/886
887: デフォルトの名無しさん [sage] 2014/02/19(水) 17:50:20.34 >>882 コード読んでないけど、x++;をx=ldexp((rand()+(rand()*1.0/RAND_MAX))/RAND_MAX , (rand()%1024)-512); とかにでもすれば? http://toro.5ch.net/test/read.cgi/tech/1342285511/887
888: デフォルトの名無しさん [sage] 2014/02/22(土) 01:24:47.68 .outっていうファイルを解析して一部書き変えて動作を変更したいのですが 調べてみると.outはC言語の実行ファイルらしいというとこまでしかわかりませんでした .outのファイルを開くとほとんど文字化けで見れないんですが .outファイルを逆コンパイルして人間が読めるようなソースを作ることは可能なのでしょうか? たすけてください http://toro.5ch.net/test/read.cgi/tech/1342285511/888
889: デフォルトの名無しさん [sage] 2014/02/22(土) 01:57:03.42 テキストファイルとして開く時点でお前には能力がない あきらめろ http://toro.5ch.net/test/read.cgi/tech/1342285511/889
890: デフォルトの名無しさん [sage] 2014/02/22(土) 04:29:07.37 「逆コンパイルして人間可読にする」って思考してる時点で 「テキストファイルとして文字化けしてる」って認識になるはず無いんだが・・・釣りかね? http://toro.5ch.net/test/read.cgi/tech/1342285511/890
891: デフォルトの名無しさん [sage] 2014/02/22(土) 07:01:08.97 テキストとして開いてみた →文字化けしてるからリコンパイルかな って流れくらいわかるだろ http://toro.5ch.net/test/read.cgi/tech/1342285511/891
892: デフォルトの名無しさん [sage] 2014/02/22(土) 08:26:25.25 そもそもリバースエンジニアリングには注意が必要なわけで 流石に自分で全部調べられるレベルにないとやって欲しくないな http://toro.5ch.net/test/read.cgi/tech/1342285511/892
893: デフォルトの名無しさん [sage] 2014/02/22(土) 12:43:27.70 >>888 ム板の天災 片山MZに師事しろ http://toro.2ch.net/test/read.cgi/tech/1380002328/ http://toro.5ch.net/test/read.cgi/tech/1342285511/893
894: デフォルトの名無しさん [sage] 2014/02/22(土) 14:18:02.72 最近javaばっかりしてて 久々、C++でデスクトップアプリを作ろうと 思ってるんですが(何を作ろうとは考えて無いけど) 自分の持ってるVSって2005なんだけど VSってmfc以外の利点は無いし 2005だからだからVC++も中途半端な作りだし やっばVC++の新しいバージョンのEE入れたほうが良い? それともマルチプラットフォームのQtが良い? どなたか教えて! http://toro.5ch.net/test/read.cgi/tech/1342285511/894
895: デフォルトの名無しさん [sage] 2014/02/22(土) 14:28:24.14 作りたいものでてから考えろや http://toro.5ch.net/test/read.cgi/tech/1342285511/895
896: デフォルトの名無しさん [sage] 2014/02/22(土) 15:13:47.52 っgcc http://toro.5ch.net/test/read.cgi/tech/1342285511/896
897: デフォルトの名無しさん [sage] 2014/02/22(土) 15:52:59.73 >>894 VS2005に、最新のEEのコンパイラ組み合わせてはどうか >>896 gcc, clang もたしなみ http://toro.5ch.net/test/read.cgi/tech/1342285511/897
898: デフォルトの名無しさん [sage] 2014/02/22(土) 17:12:31.75 >>888 無理 スキルがあるなら逆アセンブルしてパッチをあてるくらいだが それすら現実的でない 助けてくださいということはクラックされて何か仕込まれた? http://toro.5ch.net/test/read.cgi/tech/1342285511/898
899: デフォルトの名無しさん [] 2014/02/23(日) 05:50:36.81 初心者ですが、文字列の比較について教えて下さい class A { static const char * sprit(const char* chr); } const char * sprit(const char* chr){ std::string str(chr); const char subChr = substr(0,3).c_str(); return subChr; }; という文字列を半分にするクラスを作成し、 const char * chr = A::sprit("123456"); if (!strcmp(chr,"123")){ } という比較を行うと、真になって欲しいのですが 毎回結果が違ってしまいます。 chrの中を見ると「123」となってはいるのですが。 これは何を勘違いしているのでしょうか 環境はAndroid NDKです。 よろしくお願いします。 http://toro.5ch.net/test/read.cgi/tech/1342285511/899
900: デフォルトの名無しさん [sage] 2014/02/23(日) 06:36:23.77 アドレスが異なるから違うよと言われる 値の比較をするならそうしよう http://toro.5ch.net/test/read.cgi/tech/1342285511/900
901: デフォルトの名無しさん [sage] 2014/02/23(日) 07:16:49.78 そもそも、ポインタを返す関数で整数を無理やり返してコンパイルできてるのかね。 つーか、AndroidNDKでC++なのか? http://toro.5ch.net/test/read.cgi/tech/1342285511/901
902: デフォルトの名無しさん [sage] 2014/02/23(日) 08:04:31.29 >>899 ローカル変数のポインタを返してるからじゃないの? http://toro.5ch.net/test/read.cgi/tech/1342285511/902
903: デフォルトの名無しさん [sage] 2014/02/23(日) 17:33:03.17 そこら中誤字まみれでどうしようもねぇな 文字(Chr)と文字列(Str)すらごっちゃになってるし、spritはsplitだろうし、4行目A::が抜けてるし… static const std::string A::split(const char* str){return std::string(str).substr(0,3);}; でよくね http://toro.5ch.net/test/read.cgi/tech/1342285511/903
904: デフォルトの名無しさん [sage] 2014/02/23(日) 20:23:03.88 >>889-893 >>898 ありがとう、あきらめたよ http://toro.5ch.net/test/read.cgi/tech/1342285511/904
905: デフォルトの名無しさん [sage] 2014/02/23(日) 22:55:03.82 C++のSTLのstd::vectorのコードを見ていたら、 コンテナに格納可能な最大数を返してくれるメソッドmax_sizeが以下のようになってたんですけど、 size_t max_size() const { return size_t(-1) / sizeof(_Tp); } どうしてこれで求められるかが理解できません。 教えてください。お願いします。 http://toro.5ch.net/test/read.cgi/tech/1342285511/905
906: デフォルトの名無しさん [sage] 2014/02/24(月) 00:20:59.56 >>905 ・size_tはunsignedだから、-1をキャストすると最大値が出る ・sizeof(_Tp)で要素1つ辺りのサイズが算出できる そこから、vectorの実装に明るくない俺でも ・使えるのは最大で「size_tの最大値」バイトまでなんだろう ・それを要素1つ辺りのサイズごとに区切って使うのだろう というくらいは推測するよ まあ、区切るも何も、C/C++の仕様考えたら ポインタに演算や添字与えりゃ済むんだろうが… それ以上はもっかい自分できちんと。 処理系や実装者によって多少の差異があるかも?知らんけどw http://toro.5ch.net/test/read.cgi/tech/1342285511/906
907: デフォルトの名無しさん [sage] 2014/02/24(月) 00:36:44.71 でも、どう考えてもmax_size()個行く前に仮想メモリ空間が足んなくなるよねコレ スパコン用とかどうにかそれが出来るC++実装がどこかに存在するのかな… http://toro.5ch.net/test/read.cgi/tech/1342285511/907
908: デフォルトの名無しさん [sage] 2014/02/24(月) 07:39:46.17 メモリーをnewして失敗しなくても、実際にアクセスするまで メモリー確保できたかどうかわからないアーキテクチャなOSがあるんでな 最大サイズも「あれば使える」程度でいいんよ http://toro.5ch.net/test/read.cgi/tech/1342285511/908
909: デフォルトの名無しさん [sage] 2014/02/24(月) 08:21:53.96 >>906 なるほど! よくわかりました! ありがとうございます。 http://toro.5ch.net/test/read.cgi/tech/1342285511/909
910: デフォルトの名無しさん [sage] 2014/02/24(月) 17:01:31.55 あの罠仕様は実メモリ・実スワップが割り当てられないだけで仮想メモリ空間自体は割り当てされるんじゃないのか http://toro.5ch.net/test/read.cgi/tech/1342285511/910
911: デフォルトの名無しさん [sage] 2014/02/25(火) 20:59:02.95 三次方程式のプログラムを作っています。 複数解を出力する場合の処理についてです。 ニュートン法で一つ目の実数解を出力した後に 次に二つの複数解の実数解を出しました。 次に虚数部を出したいと思うんですが どう処理すればいいのかわかりません。 その処理をしているソースを載せます。 どう処理すればいいでしょうか? http://toro.5ch.net/test/read.cgi/tech/1342285511/911
912: デフォルトの名無しさん [sage] 2014/02/25(火) 21:01:10.22 最後のelse if (hanbetu < 0.0)のところが 複素数解を出力する処理です。 変数imに虚数部を入れます。 for (int n = 1; n < 100; n++) { if (Math.Abs(h) < 0.000000000000001) { kai[count] = Math.Round(x, 13); if (hanbetu > 0.0) { count++; x = 10.0; if (count == 2 && kai[0] == kai[1]) { count--; x = -10.0; } } if (count > 1) { kai[2] = Math.Round((-(i[1] / i[0])) - (kai[0] + kai[1]), 13); break; } else if (hanbetu < 0.0) { kai[1] = kai[2] = Math.Round((-i[1] / i[0] - kai[0]) / 2.0, 13); im = (Math.Sqrt(3.0)); } http://toro.5ch.net/test/read.cgi/tech/1342285511/912
913: デフォルトの名無しさん [] 2014/02/28(金) 17:15:55.38 age http://toro.5ch.net/test/read.cgi/tech/1342285511/913
914: デフォルトの名無しさん [sage] 2014/02/28(金) 19:09:27.59 マルチプラットフォーム的なコードにしたいんだが OS依存のライブラリ等に自作ラッパ噛ますのってアリ? 本当はSDLって奴使いたかったんだけど Windows8でXAudio2のバージョンが変わったとかでビルドできない… http://toro.5ch.net/test/read.cgi/tech/1342285511/914
915: デフォルトの名無しさん [sage] 2014/02/28(金) 22:51:40.35 >>914 OS依存部分を直接自前ライブラリに実装して、プラットフォームごとに自前ライブラリ作りなおしてもええんやで まぁあれだ、どうせ移植するときは自分でやるのが大半だろうし、自分で移植しやすいように書けばいい http://toro.5ch.net/test/read.cgi/tech/1342285511/915
916: デフォルトの名無しさん [sage] 2014/03/02(日) 23:13:36.04 >>914 車輪の再設計になってもいいなら。GPLとかでよければ誰かがやってることが多い それだけみんなおんなじことを考える そのへんを度外視すれば、悪いことではない http://toro.5ch.net/test/read.cgi/tech/1342285511/916
917: デフォルトの名無しさん [sage] 2014/03/12(水) 15:44:24.41 ID:Z46QAlOd ちんこまんこにいれれば ハッピー http://toro.5ch.net/test/read.cgi/tech/1342285511/917
918: デフォルトの名無しさん [sage] 2014/03/12(水) 16:28:46.86 ID:AZrAiCEG ワロタ http://toro.5ch.net/test/read.cgi/tech/1342285511/918
919: デフォルトの名無しさん [sage] 2014/03/12(水) 16:42:02.35 ID:4AbABLKQ 【Z46QAlOd】の検索 PC等 [プログラム] C++相談室 part111 320 322-323 PC等 [プログラム] スレを勃てるまでもないC/C++の質問はここで 21 917 http://toro.5ch.net/test/read.cgi/tech/1342285511/919
920: デフォルトの名無しさん [sage] 2014/03/18(火) 06:51:58.40 ID:B0h8c5Jx スレ勃てずに肉棒勃てろ http://toro.5ch.net/test/read.cgi/tech/1342285511/920
921: デフォルトの名無しさん [age] 2014/04/21(月) 10:53:42.17 ID:CQ39bA+0 .cpp は .h を #include で認識してるけど .h は .cpp をどうやって認識してるの? 地味にこれが分らないから詳しく教えて下さい http://toro.5ch.net/test/read.cgi/tech/1342285511/921
922: デフォルトの名無しさん [sage] 2014/04/21(月) 11:03:30.57 ID:lfASPZAR 認識する必要なんてないだろ http://toro.5ch.net/test/read.cgi/tech/1342285511/922
923: デフォルトの名無しさん [sage] 2014/04/21(月) 11:13:48.75 ID:LiZ+Dtbr プリプロセッサがウンタラカンタラ http://toro.5ch.net/test/read.cgi/tech/1342285511/923
924: デフォルトの名無しさん [sage] 2014/04/21(月) 12:03:34.89 ID:nKQE7Rc+ >>921 .hには.cppの場所記入しないだろ? .cppが.hを呼んでるだけだから http://toro.5ch.net/test/read.cgi/tech/1342285511/924
925: デフォルトの名無しさん [sage] 2014/04/21(月) 22:38:47.97 ID:juP562jX Visual Studio2008で作ったlibをVisual Studio2012で使うとエラーが出ます。 これをなんとかできませんか? http://toro.5ch.net/test/read.cgi/tech/1342285511/925
926: デフォルトの名無しさん [sage] 2014/04/21(月) 23:37:15.34 ID:nKQE7Rc+ エラーコピペ http://toro.5ch.net/test/read.cgi/tech/1342285511/926
927: デフォルトの名無しさん [sage] 2014/04/22(火) 18:46:43.93 ID:f8JeFUsV error LNK1120: 3 件の未解決の外部参照 error LNK2001: 外部シンボル ""public: static void __cdecl std::_String_base::_Xlen(void)" (?_Xlen@_String_base@std@@SAXXZ)" は未解決です。 error LNK2001: 外部シンボル ""public: static void __cdecl std::_String_base::_Xlen(void)" (?_Xlen@_String_base@std@@SAXXZ)" は未解決です。 error LNK2001: 外部シンボル ""public: static void __cdecl std::_String_base::_Xlen(void)" (?_Xlen@_String_base@std@@SAXXZ)" は未解決です。 error LNK2001: 外部シンボル ""public: static void __cdecl std::_String_base::_Xran(void)" (?_Xran@_String_base@std@@SAXXZ)" は未解決です。 error LNK2001: 外部シンボル ""public: static void __cdecl std::_String_base::_Xran(void)" (?_Xran@_String_base@std@@SAXXZ)" は未解決です。 error LNK2001: 外部シンボル ""public: static void __cdecl std::_String_base::_Xran(void)" (?_Xran@_String_base@std@@SAXXZ)" は未解決です。 http://toro.5ch.net/test/read.cgi/tech/1342285511/927
928: デフォルトの名無しさん [sage] 2014/04/22(火) 18:50:03.62 ID:f8JeFUsV error LNK2019: 未解決の外部シンボル "__declspec(dllimport) public: struct std::_Iterator_base12 * * __thiscall std::_Container_base12:: _Getpfirst(void)const " (__imp_?_Getpfirst@_Container_base12@std@@QBEPAPAU_Iterator_base12@2@XZ) が関数 "protected: void __thiscall std::deque<short *,class std::allocator<short *> >::_Orphan_off(unsigned int)const " (?_Orphan_off@?$deque@PAFV?$allocator@PAF@std@@@std@@IBEXI@Z) で参照されました。 error LNK2019: 未解決の外部シンボル "public: static void __cdecl std::_String_base::_Xlen(void)" (?_Xlen@_String_base@std@@SAXXZ) が関数 "protected: bool __thiscall std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >::_Grow(unsigned int,bool)" (?_Grow@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAE_NI_N@Z) で参照されました。 error LNK2019: 未解決の外部シンボル "public: static void __cdecl std::_String_base::_Xran(void)" (?_Xran@_String_base@std@@SAXXZ) が関数 "public: class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > & __thiscall std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >:: assign(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,unsigned int,unsigned int)" (?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@ABV12@II@Z) で参照されました http://toro.5ch.net/test/read.cgi/tech/1342285511/928
929: デフォルトの名無しさん [sage] 2014/04/22(火) 18:50:46.37 ID:f8JeFUsV error LNK2038: 'RuntimeLibrary' の不一致が検出されました。値 'MTd_StaticDebug' が MDd_DynamicDebug の値 'main.obj' と一致しません。 error LNK2038: 'RuntimeLibrary' の不一致が検出されました。値 'MTd_StaticDebug' が MDd_DynamicDebug の値 'main.obj' と一致しません。 error LNK2038: 'RuntimeLibrary' の不一致が検出されました。値 'MTd_StaticDebug' が MDd_DynamicDebug の値 'main.obj' と一致しません。 error LNK2038: 'RuntimeLibrary' の不一致が検出されました。値 'MTd_StaticDebug' が MDd_DynamicDebug の値 'main.obj' と一致しません。 error LNK2038: 'RuntimeLibrary' の不一致が検出されました。値 'MTd_StaticDebug' が MDd_DynamicDebug の値 'main.obj' と一致しません。 http://toro.5ch.net/test/read.cgi/tech/1342285511/929
930: デフォルトの名無しさん [sage] 2014/04/22(火) 19:05:35.72 ID:yUACokf4 ライブラリとリンクするライブラリは、ライブラリのコンパイル時に使ったヘッダファイルと互換が有る奴使え。 最低でもMTとMDのオプションぐらい合わせろ。 ていうか(恐らく)バージョンの違うテンプレートライブラリでリンクしようとすんな。 http://toro.5ch.net/test/read.cgi/tech/1342285511/930
931: 921 [age] 2014/04/23(水) 22:39:38.56 ID:qwt0uHqN そもそも、なんで .h は必要なの? .cpp だけじゃどんな問題があるの? http://toro.5ch.net/test/read.cgi/tech/1342285511/931
932: デフォルトの名無しさん [sage] 2014/04/23(水) 22:43:29.29 ID:U/+ppQ2B 他のcppに公開する必要ないなら必要ないけど http://toro.5ch.net/test/read.cgi/tech/1342285511/932
933: デフォルトの名無しさん [sage] 2014/04/23(水) 22:45:26.25 ID:V34cTVQA >>931 多数の.cppを別々にコンパイルできます。 各.cppで、共通部分を.hで宣言しておけばコンパイルできます。 リンクするとき、まだコンパイルしていない.cppがあれば、エラーになります。 http://toro.5ch.net/test/read.cgi/tech/1342285511/933
934: デフォルトの名無しさん [sage] 2014/04/23(水) 22:48:20.65 ID:V34cTVQA Cだけならわかりやすいかも C++は、いろいろ勉強しないとなぁ http://toro.5ch.net/test/read.cgi/tech/1342285511/934
935: デフォルトの名無しさん [] 2014/04/23(水) 23:57:20.36 ID:8aJ+1hBq C++はCより難しいですか? http://toro.5ch.net/test/read.cgi/tech/1342285511/935
936: デフォルトの名無しさん [sage] 2014/04/24(木) 01:49:00.51 ID:9wgxQ0KX >>931 ここで、他のファイルのヘッダをインクルードすると、 返り値の型 f(引数の型); というようにヘッダの内容が展開されて、 他のファイルにある、関数の型が事前にわかる(前方宣言) よってここで、f()の実装を知らないのに、正しい型で使える 複数のファイルによる、並行・分散、開発・コンパイル時に、 ひとまず宣言だけあれば、実装がなくてもコンパイルできる と同時に他人が、f()の中身を作る http://toro.5ch.net/test/read.cgi/tech/1342285511/936
937: デフォルトの名無しさん [sage] 2014/04/24(木) 02:34:34.09 ID:V/BmNssB >>935 難しさの基準による ちょっとしたことで低水準に踏み込まざるを得なくなるCと、ひたすら機能が多く複雑な言語であるC++ http://toro.5ch.net/test/read.cgi/tech/1342285511/937
938: デフォルトの名無しさん [sage] 2014/04/24(木) 09:58:11.17 ID:mnsZs1hI >>935 難しい 実際にC++を使ってる人間の間ですら 極端にイメージするものが違うのも一因 http://toro.5ch.net/test/read.cgi/tech/1342285511/938
939: デフォルトの名無しさん [sage] 2014/04/24(木) 11:22:47.53 ID:5ftIJb20 C++でプログラミング学んだ人は偏見に染まってる感があるね C++こそ正当なオブジェクト指向言語だと思い込んでたり・・ http://toro.5ch.net/test/read.cgi/tech/1342285511/939
940: デフォルトの名無しさん [sage] 2014/04/24(木) 15:55:03.07 ID:29x10p2Y >>935 本物のプログラマたちが使う唯一のプログラム言語だよ http://toro.5ch.net/test/read.cgi/tech/1342285511/940
941: デフォルトの名無しさん [sage] 2014/04/24(木) 16:08:35.89 ID:mnsZs1hI 本物のプログラマは複数使い分ける http://toro.5ch.net/test/read.cgi/tech/1342285511/941
942: デフォルトの名無しさん [sage] 2014/04/24(木) 18:53:13.69 ID:fAk9I7UT >>939 その見解も偏見だと思うけどな Cから入って、C++のクラスは特定の使い方を想定して砂糖まぶした構造体だと理解する人も結構居るだろ だからと言ってオブジェクト指向の源流を辿りに行くかどうかは別問題だが… あれだ、関数型言語を食わず嫌いしてる手続き型言語ユーザだって、そういう概念があることは知ってる的な http://toro.5ch.net/test/read.cgi/tech/1342285511/942
943: デフォルトの名無しさん [sage] 2014/04/24(木) 19:58:37.02 ID:AklGWvZ+ 構造体に関数も入れれるのがクラスって感じだったな http://toro.5ch.net/test/read.cgi/tech/1342285511/943
944: デフォルトの名無しさん [sage] 2014/04/24(木) 20:06:48.17 ID:mnsZs1hI モダンC++どころじゃないってか http://toro.5ch.net/test/read.cgi/tech/1342285511/944
945: デフォルトの名無しさん [sage] 2014/04/24(木) 20:16:31.22 ID:E/S2XTBi むしろ例外の実現が困難ではないか http://toro.5ch.net/test/read.cgi/tech/1342285511/945
946: デフォルトの名無しさん [sage] 2014/04/24(木) 21:03:48.20 ID:tXCIarBm >>942 その理解だと virtual の存在意義にしばらく悩むことになる >>945 SjLj 以外の実装を知りたいものだ http://toro.5ch.net/test/read.cgi/tech/1342285511/946
947: デフォルトの名無しさん [sage] 2014/04/24(木) 22:04:47.58 ID:fAk9I7UT >>946 え?関数ポインタの入った構造体へのポインタを砂糖振って使いやすくした奴でしょ、あれ。 やっぱ、C++流オブジェクト指向って使い方を想定して砂糖まぶした構造体じゃないですか。 // この理屈で行くと様々なプログラミング言語の機能が〜に毛が生えただけになりますが。 http://toro.5ch.net/test/read.cgi/tech/1342285511/947
948: デフォルトの名無しさん [] 2014/04/24(木) 22:43:05.57 ID:7Hb7UgBC ある基底クラスを元に派生クラスを定義し その派生クラスを別のクラスのメンバーとすることを継承って言うの? http://toro.5ch.net/test/read.cgi/tech/1342285511/948
949: デフォルトの名無しさん [sage] 2014/04/24(木) 22:56:22.26 ID:tXCIarBm >>948 どちらかというと委譲という気が http://toro.5ch.net/test/read.cgi/tech/1342285511/949
950: デフォルトの名無しさん [sage] 2014/04/25(金) 08:28:10.22 ID:cnGbwKBG >>948 派生クラスを定義する所までか派生じゃね? http://toro.5ch.net/test/read.cgi/tech/1342285511/950
951: デフォルトの名無しさん [948] 2014/04/25(金) 14:12:44.94 ID:kZbj9xjz ごめん 継承と委譲の違いを教えて http://toro.5ch.net/test/read.cgi/tech/1342285511/951
952: デフォルトの名無しさん [sage] 2014/04/25(金) 14:22:59.64 ID:zjeu9d2L 自分がパワーアップするか他人の力を借りるかの違い http://toro.5ch.net/test/read.cgi/tech/1342285511/952
953: デフォルトの名無しさん [sage] 2014/04/25(金) 15:25:06.04 ID:jPmvuOB6 社員を増やすかアウトソースするかの違い http://toro.5ch.net/test/read.cgi/tech/1342285511/953
954: デフォルトの名無しさん [sage] 2014/04/25(金) 16:03:08.19 ID:uPsm+e3e >>951 継承は例えば親クラスの ret_type func(Nanka* arg) を使いたかったら 以下のようにする class Foo : public vritual OtherClass {//以下省略 委譲は例えば他のクラスの ret_type func(Nanka* arg) を使いたかったら 以下のようにする class Goo { private: OtherClass* m_pDelegator; public: ret_type func(Nanka* arg){ return m_pDelegator->func( arg ); } }; http://toro.5ch.net/test/read.cgi/tech/1342285511/954
955: デフォルトの名無しさん [sage] 2014/05/06(火) 19:03:17.01 ID:2s3fltSJ 変数や関数の名前ってどうやって決めてる? いちいち辞書を引いて、誰も読めない正しい英語を書くのはもううんざり http://toro.5ch.net/test/read.cgi/tech/1342285511/955
956: デフォルトの名無しさん [sage] 2014/05/06(火) 19:36:25.17 ID:wMsmsiA/ しばらくやってたら、ある程度使う単語は決まってくると思う http://toro.5ch.net/test/read.cgi/tech/1342285511/956
957: デフォルトの名無しさん [sage] 2014/05/06(火) 20:42:03.54 ID:Jq5zOSvx そういうもんかな 返答ありがとう http://toro.5ch.net/test/read.cgi/tech/1342285511/957
958: ◆QZaw55cn4c [sage] 2014/05/06(火) 23:06:29.20 ID:R4LFdeTL >>954 委譲の方、Goo のコンストラクタにも何かしら要るんじゃないの http://toro.5ch.net/test/read.cgi/tech/1342285511/958
959: デフォルトの名無しさん [sage] 2014/05/06(火) 23:18:08.81 ID:i07kpOvT 質問させてください。 以下のプログラムをグローバル変数を使わず同じ処理をさせるにはどうすればいいのでしょうか? グローバル変数を使うのはあまり良くないと聞いたのですが、どうにもそのやり方が思い浮かびません。 簡単にでもいいので、よろしくお願いします。 #include<stdio.h> int life=1000; int Atk(int damageSatan){ // (勇者のライフ−被ダメ) を処理する関数 printf("魔王の攻撃。勇者は%dのダメージを受けた\n",damageSatan); return life - damageSatan; } int Recover(int kaifuku){ // (勇者のライフ+回復) を処理する関数 printf("勇者は薬草を使った。%d回復した。\n",kaifuku); return life + kaifuku; } void gennzai(void){ //現在のライフを書き出すだけの関数 printf("現在のライフ%d\n",life); } int main(void){ gennzai(); life=Atk(400); gennzai(); life=Recover(50); gennzai(); life=Atk(200); gennzai(); while(1){}; } http://toro.5ch.net/test/read.cgi/tech/1342285511/959
960: デフォルトの名無しさん [sage] 2014/05/06(火) 23:25:50.28 ID:XedF2XR6 本題と関係ないけど命名規則とコメントがクソい http://toro.5ch.net/test/read.cgi/tech/1342285511/960
961: デフォルトの名無しさん [sage] 2014/05/06(火) 23:31:57.27 ID:i07kpOvT >>960 その辺は初心者ということで目を瞑っていただきたいです。 コメントはつけていなかったのですが、他人が見る時に有ったほうがいいと聞いていたので 適当ではありますが急遽付け足しました。 命名規則もおいおい勉強していきたいと思います。 http://toro.5ch.net/test/read.cgi/tech/1342285511/961
962: デフォルトの名無しさん [sage] 2014/05/06(火) 23:32:25.81 ID:WjTWSVZo >>959 これじゃあかんの? ttp://ideone.com/iVu0sr http://toro.5ch.net/test/read.cgi/tech/1342285511/962
963: デフォルトの名無しさん [sage] 2014/05/06(火) 23:43:12.17 ID:i07kpOvT >>962 おお!わざわざこんなサイトまで使って直していただいてありがとうございます。 コピペしてビルドしてみたら全く同じ結果になりました。 各関数の引数にそれぞれlifeを入れたら良かったんですね! 書いていただいたソースをよく見て勉強してきます どうもありがとうございました! http://toro.5ch.net/test/read.cgi/tech/1342285511/963
964: デフォルトの名無しさん [sage] 2014/05/06(火) 23:47:21.66 ID:WjTWSVZo >>963 結果が全てならいいけど スマートかどうかは別問題だからね http://toro.5ch.net/test/read.cgi/tech/1342285511/964
965: デフォルトの名無しさん [sage] 2014/05/06(火) 23:51:26.58 ID:i07kpOvT >>964 今のところはスマートさとか考えている余裕はありませんが、スマートな方が当然良いですよね 頑張ります http://toro.5ch.net/test/read.cgi/tech/1342285511/965
966: デフォルトの名無しさん [sage] 2014/05/10(土) 15:00:59.73 ID:xgj3yjgV プログラム初心者です。 ある数(scanfのやつ使って文字適当に決める)の100の位を出す問題なんだけどわからないです。例えば実行ファイルで12345の数を打ったら百のくらいは"3"ですみたいなのを出したい http://toro.5ch.net/test/read.cgi/tech/1342285511/966
967: デフォルトの名無しさん [sage] 2014/05/10(土) 15:01:46.01 ID:xgj3yjgV >>966 書き忘れました。c言語です http://toro.5ch.net/test/read.cgi/tech/1342285511/967
968: デフォルトの名無しさん [sage] 2014/05/10(土) 16:43:54.14 ID:O2yhZ3ex sprintfで10進文字列に変換して右から3文字目を出力する だけじゃないの? http://toro.5ch.net/test/read.cgi/tech/1342285511/968
969: デフォルトの名無しさん [sage] 2014/05/10(土) 16:52:59.19 ID:O2yhZ3ex http://codepad.org/QqddXav9 やっつけテストプログラム http://toro.5ch.net/test/read.cgi/tech/1342285511/969
970: デフォルトの名無しさん [sage] 2014/05/10(土) 18:04:23.64 ID:ZLXGU8kN ありがとうございます!そんなやり方があるとは… 色々な方法で求めることができるんですね http://toro.5ch.net/test/read.cgi/tech/1342285511/970
971: デフォルトの名無しさん [sage] 2014/05/10(土) 18:16:35.41 ID:8M00MQ+Z 1000で割った余りから100で割った余りを引いて100で割るとか http://toro.5ch.net/test/read.cgi/tech/1342285511/971
972: デフォルトの名無しさん [] 2014/05/10(土) 18:22:29.28 ID:nO3jje8t (12345 / 100) % 10 http://toro.5ch.net/test/read.cgi/tech/1342285511/972
973: デフォルトの名無しさん [sage] 2014/05/10(土) 18:55:51.81 ID:8M00MQ+Z すげーあほなこと書いたわ http://toro.5ch.net/test/read.cgi/tech/1342285511/973
974: デフォルトの名無しさん [sage] 2014/05/10(土) 19:17:15.28 ID:DcycXvUU コンソールアプリでカレントディレクトリを取得して、表示するってのをやりたいんだけど どうしたらできる? http://toro.5ch.net/test/read.cgi/tech/1342285511/974
975: デフォルトの名無しさん [sage] 2014/05/10(土) 19:23:11.05 ID:vWx61Bp4 win32apiを呼べばできるよ http://toro.5ch.net/test/read.cgi/tech/1342285511/975
976: デフォルトの名無しさん [sage] 2014/05/10(土) 20:17:50.50 ID:KdDOFXms POSIX準拠なら、getcwd()だろ。 http://toro.5ch.net/test/read.cgi/tech/1342285511/976
977: デフォルトの名無しさん [] 2014/05/10(土) 23:34:24.62 ID:SFO++ycj こういうスレってGoogleの使い方分かってない奴が質問しに来るよな ダブルクオーテーションでくくるのと - マイナス記号でのフィルタくらい覚えろよ http://toro.5ch.net/test/read.cgi/tech/1342285511/977
978: デフォルトの名無しさん [sage] 2014/05/11(日) 08:17:43.20 ID:HBJbY+fy >>977 そういう奴はどうやってこのスレに到達してんだろうな… http://toro.5ch.net/test/read.cgi/tech/1342285511/978
979: デフォルトの名無しさん [sage] 2014/05/11(日) 09:34:39.63 ID:NXvs+Rfo http://msdn.microsoft.com/ja-jp/library/cc429301.aspx > 現在のプロセスのカレントディレクトリを取得します。 http://msdn.microsoft.com/ja-jp/library/ms235450.aspx > getcwd > この POSIX 関数は使用されなくなりました。 代わりに、ISO C++ に準拠する _getcwd を使用します。 http://toro.5ch.net/test/read.cgi/tech/1342285511/979
980: デフォルトの名無しさん [sage] 2014/05/11(日) 16:45:17.33 ID:bK9D/oLg FAQかもしれませんが、ググっても良く分りませんでした。 二次元配列を引数に持つ関数を作りたい場合、 以下のような感じにしたいのですが、これではエラーします。 最もお勧めの書き方を教えてください。 int func1(int **array, int rows, int cols) { int sum = 0; for (int r = 0; r<rows; r++){ for (int c = 0; c<cols; c++){ sum += array[r][c]; } } return sum; } int _tmain(int argc, _TCHAR* argv[]) { const int rows = 5; const int cols = 3; int array[rows][cols]; for (int r = 0; r<rows; r++){ for (int c = 0; c<cols; c++){ array[r][c] = r * 10 + c; } } sum = func1(array, rows, cols); printf("sum=%d\n", sum); return 0; } http://toro.5ch.net/test/read.cgi/tech/1342285511/980
981: デフォルトの名無しさん [sage] 2014/05/11(日) 17:10:31.97 ID:5s3TJsCS int func1(int**& array, int rows, int cols) これでおk http://toro.5ch.net/test/read.cgi/tech/1342285511/981
982: デフォルトの名無しさん [sage] 2014/05/11(日) 17:29:43.32 ID:NXvs+Rfo >>980 http://ideone.com/ng8IFq http://toro.5ch.net/test/read.cgi/tech/1342285511/982
983: デフォルトの名無しさん [sage] 2014/05/11(日) 18:04:41.37 ID:HBJbY+fy >>980 2次元配列はポインタのポインタではない。 1次元配列で長さをcols*rowsにしてrow*rows+colまたはcol*cols+rowでアクセスするとかが定番、かな。 http://toro.5ch.net/test/read.cgi/tech/1342285511/983
984: デフォルトの名無しさん [sage] 2014/05/11(日) 18:51:15.18 ID:bK9D/oLg みなさんコメントありがとうございました。 >>981 int**& に変更してもビルドできませんでした。もう少し解説お願いします。 >>982 良いアイディアですね。参考にさせてもらいます。 >>983 やはりそういう作戦しか無いのでしょうか? http://toro.5ch.net/test/read.cgi/tech/1342285511/984
985: ◆QZaw55cn4c [sage] 2014/05/11(日) 22:27:25.49 ID:VWJDXhYj >>980 可変長な二次元の配列をそのまま渡すことはできない、C99 でも。 malloc() か alloca() を使うのが定番だと思う alloca() 版:http://ideone.com/ThAqqJ http://toro.5ch.net/test/read.cgi/tech/1342285511/985
986: デフォルトの名無しさん [sage] 2014/05/11(日) 22:42:24.03 ID:i3EWh+tv C++なんだから多次元配列クラスを作って参照渡しすればいいんじゃねえの? http://toro.5ch.net/test/read.cgi/tech/1342285511/986
987: デフォルトの名無しさん [] 2014/05/11(日) 23:09:23.22 ID:oDuibFuc 文字列を数値に変換したいです 文字コードの意味をよく理解していないですが 例えば char str[80]; int num; scanf("%s",str) num = str - '0'; aを入力した場合 97ー48で49がnumに入り %dで出力したら49がでるのでしょうか。 ならばこれを%cで出力したら1? 今実行環境がありません;; http://toro.5ch.net/test/read.cgi/tech/1342285511/987
988: デフォルトの名無しさん [sage] 2014/05/11(日) 23:13:26.83 ID:dGFiGG7Z 全角文字列を見せられ続けて死ぬ http://toro.5ch.net/test/read.cgi/tech/1342285511/988
989: デフォルトの名無しさん [sage] 2014/05/12(月) 00:20:43.71 ID:4z9QgUFm >>985 結果が違う…と思ったら、rowsとcolsの値が逆なのか http://toro.5ch.net/test/read.cgi/tech/1342285511/989
990: デフォルトの名無しさん [sage] 2014/05/12(月) 00:24:19.82 ID:DwqGETIp >>989 ごめん間違えた‥ http://toro.5ch.net/test/read.cgi/tech/1342285511/990
991: デフォルトの名無しさん [sage] 2014/05/12(月) 00:44:03.93 ID:DwqGETIp >>987 http://ideone.com/L3DLPJ http://toro.5ch.net/test/read.cgi/tech/1342285511/991
992: デフォルトの名無しさん [sage] 2014/05/12(月) 02:04:30.11 ID:8m8uDaT+ >>985 サンプルありがとうございます。参考になりました。 >>可変長な二次元の配列をそのまま渡すことはできない、C99 でも。 なるほど、そういう事なんですね。二次元配列は諦めて、 allocaで行きます。 http://toro.5ch.net/test/read.cgi/tech/1342285511/992
993: デフォルトの名無しさん [sage] 2014/05/12(月) 11:53:45.09 ID:4z9QgUFm >>992 http://d.hatena.ne.jp/tondol/20090713/1247426321 に多次元配列の実装方法の例があるので参考にしてみるといい。 >>985 は「各行のデータを保持する配列と各行へのポインタを保持する配列に分けて確保」の方法 >>983 は「1次元配列として確保」の方法 俺は「各行のデータを保持する配列を連続した領域で確保」の方法が好き。 http://toro.5ch.net/test/read.cgi/tech/1342285511/993
994: デフォルトの名無しさん [sage] 2014/05/13(火) 00:33:24.98 ID:1g/5f/R+ >>988 マジでそれアスペの手前だよ 何とかするのオススメ http://toro.5ch.net/test/read.cgi/tech/1342285511/994
995: デフォルトの名無しさん [sage] 2014/05/13(火) 00:39:58.94 ID:VL3miRAM C/C++における関数呼出関係の把握をしたいので、 gnuglobalを使ってみたのですが、 callee( )がsrc.cppの100行目から呼ばれるという情報は取得できるのですが、 私が欲しいcallee( )がsrc.cppのcaller( )から呼ばれる、という情報は取得できません。 OSはLinuxです。 gnuglobalで私の欲しい情報を得る方法、もしくは 別のツールがあれば教えて下さい。 http://toro.5ch.net/test/read.cgi/tech/1342285511/995
996: デフォルトの名無しさん [sage] 2014/05/13(火) 00:43:41.91 ID:BZ1B9xOm listやvectorなどにおいて LIST.begin() <= LIST.end() LIST.rbegin() <= LIST.rend() これらがtrueであることは保障されてますか? http://toro.5ch.net/test/read.cgi/tech/1342285511/996
997: デフォルトの名無しさん [sage] 2014/05/13(火) 00:47:42.44 ID:wwrEnEuU されません 必ず != を使いましょう http://toro.5ch.net/test/read.cgi/tech/1342285511/997
998: デフォルトの名無しさん [sage] 2014/05/13(火) 00:51:28.09 ID:LTUGkVaD >>996 vectorは保証されていると考えて問題無いと思う。 listは保証されていない。 http://toro.5ch.net/test/read.cgi/tech/1342285511/998
999: デフォルトの名無しさん [sage] 2014/05/13(火) 00:54:39.88 ID:BZ1B9xOm レスありがとうございます != を使うようにします http://toro.5ch.net/test/read.cgi/tech/1342285511/999
1000: デフォルトの名無しさん [sage] 2014/05/13(火) 00:54:56.84 ID:LTUGkVaD >>996 すまん、見間違えた。 rbeginとrendだったとは。 http://toro.5ch.net/test/read.cgi/tech/1342285511/1000
1001: 1001 [] Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。 http://toro.5ch.net/test/read.cgi/tech/1342285511/1001
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
4.242s