- 1 名前:デフォルトの名無しさん mailto:sage [2007/08/06(月) 23:26:08 ]
- エスケープシーケンスやWin32APIなどの環境依存な物でもOK。
ただしその場合、質問者は必ず、環境を書きましょう。 ※sage禁止です(と代々スレに書いてありますが自己判断で)。 【前スレ】 【初心者歓迎】C/C++室 Ver.40【環境依存OK】 pc11.2ch.net/test/read.cgi/tech/1184717430/ 【アップローダー】(質問が長い時はココ使うと便利) kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/joyful.htm
- 856 名前:デフォルトの名無しさん mailto:sage [2007/08/30(木) 22:49:26 ]
- >>850
なぜなら、manpage は bcc じゃないから。 戻り値よりも、obj ファイルや exe ファイルが生成されてるかどうかを見た方が楽なんじゃないか。
- 857 名前:デフォルトの名無しさん mailto:sage [2007/08/30(木) 22:51:43 ]
- >>852
テトリス
- 858 名前:844 mailto:sage [2007/08/31(金) 00:21:14 ]
- >>856
それだとコンパイルするたびに、objファイルを消さないといけないですよね。 コンパイル前にobjファイルとexeファイルを消すプログラムにすれば済む話かもしれないですけど・・・
- 859 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 00:25:28 ]
- >>852
2ch専用ブラウザ機能付きテトリス セルフコンパイル機能付きテトリス 英日翻訳機能付きテトリス OCR機能付きテトリス 人工無能機能付きテトリス
- 860 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 00:27:18 ]
- >>844
エスパーすると君が本当に必要なのは make および makefile に関する知識だ
- 861 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 00:31:02 ]
- 人工無能機能付きテトリスに期待
- 862 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 00:40:19 ]
- 今更過ぎる質問なんですがWindows2000にVC++2.0って
インストール不可なんでしょうか? うまく行ったかなと思ったら、最後の最後でレジストリの 書き込みに失敗しましたとかって出てしまいました。 他のバージョンのVCとかは一切インストールしていない 状態です。
- 863 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 00:42:02 ]
- 可能ですよ
- 864 名前:862 mailto:sage [2007/08/31(金) 00:53:42 ]
- >>863
レスありがとうございます。 Win2Kのインストールから、もう一度やり直してみます・・・orz サービスパック(SP4)入れる前にVCをインストールした方が 良かったのかな・・・?
- 865 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 01:05:29 ]
- #include <iostream>
//typedef int link; class link {}; int main(){ link l; } g++4.1.2で怒られました。コンパイラ不信になりそうです。 変数名をNULLにするような常識外れなのかもしれませんが、 こういう名前空間の衝突はどこを見れば予想できますか?
- 866 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 01:08:56 ]
- >>g++4.1.2で怒られました。コンパイラ不信になりそうです。
君のレベルではコンパイラのバグなど、コンパイラ側の問題に遭遇することは無い。 コンパイルエラーはすべてコンパイラのせいではなく、自分が悪いのだと認識したほうがいい。
- 867 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 01:13:28 ]
- >>865
エラーメッセージを見れば予想できるよ。
- 868 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 01:26:28 ]
- __declspec(novtable)は、どういう時に使うものですか?
- 869 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 01:30:10 ]
- >>865
自分の作ったクラスとか関数をすべて自分の名前空間に入れれば衝突を気にせずに済むよ
- 870 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 01:31:03 ]
- >>866
標準ヘッダをインクルードしたらグローバルにunistd.hがぶちまけられる、 ってのはバグでなくてもショックでした。 >>867 初お目見得のエラーメッセージって初心者キラーなもので…。 class hoge{ link l; }; : error: ‘link’ does not name a type 危なそうな名前は回避するしかないんですかね。気をつけます。
- 871 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 01:36:49 ]
- >>869
あなるほど、ちと面倒ですがそうします。皆さんありがとう。
- 872 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 04:29:23 ]
- 標準入出力等の一部の関数は、
名前空間というものが無いCの関数として公開されたAPIを用いて実装されてるわけで、 たとえ標準Cの関数だけをstd名前空間に入れてもそいつらが使ってるAPI関数はそのままグローバルに残り そりゃ凄い規模の汚染が発生していることだろう。 VCのIDE上でグローバル名前空間::からの入力予想をかけたらその凄まじさがよくわかる。 ただ大文字で始まるようなものは少ないんで、 「クラスの名前は先頭大文字でキャメル」とかそれなりに一般的な命名規則使ってれば遭遇しにくく 知らずに有効なコーディングルールを使ってるとかえって危ない場合ってあるんだなぁとかそういうことを思った。
- 873 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 09:46:13 ]
- 前々から気になっていたので、これを機にぐぐった
>>868 msdn.microsoft.com/msdnmag/issues/0300/c/
- 874 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 11:12:27 ]
- A を直接作ることが無いのであれば、
A のコンストラクタで仮想関数テーブルを初期化する処理は必要ない、無駄だ、ということか。なるほど。
- 875 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 11:28:51 ]
- setcurrentdirectoryを使って、
ネットワーク上のPCのディレクトリを指定したいのですが、 記述の仕方を教えてください。
- 876 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 11:30:36 ]
- novtableはATLのウィザードで作ったクラスで良く見る。
- 877 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 11:50:48 ]
- >>845
\\servername\sharename
- 878 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 12:04:14 ]
- 1万行だなんて身近スg
- 879 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 13:11:18 ]
- std::basic_ifstream<wchar_t>で文字を読み込むと日本語が文字化けしちゃうんですか
何故でしょうか?読み込むテキストはUTF-8で書いてあります
- 880 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 13:25:50 ]
- UTF-8なlocaleをstreamにimbue()汁
それがサポートされていれば、の話だがな
- 881 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 13:31:46 ]
- これimbue(std::locale("japanese"));やstd::locale::global(std::locale("japanese")); これは
試しましたがダメでした
- 882 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 13:36:17 ]
- > UTF-8なlocaleを
これが読めなかったのか janapeseとかいうlocaleを使っているところを見ると、VC++か? なら、C++localeに任せるのは諦めろ。 VC++はUTF-8なlocaleをサポートしていない。
- 883 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 13:38:14 ]
- そうですか・・・じゃあマルチバイトで読み込んで内部で変換するしかないですね
ありがとうございました
- 884 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 13:42:01 ]
- ようはコード変換のファセットだけUTF-8のものと差し替えればいいんだ。
BoostにもUTF-8コード変換のファセットがあるんだが、 対象がUCS-4だからWindowsのwchar_tでは使えないだろう。 それならおそらく自作するしかない。誰か作っているかもしれないが。 www.boost.org/libs/serialization/doc/codecvt.html
- 885 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 13:49:05 ]
- >>884
汎用的なcodecvt<>のセットがどっかにあるんなら俺も欲しいな boost::iostreams::codeconverterとかはpublicなデストラクタを備える codecvt<>実装を要求するんで、VC++標準のcodecvt<>は使えないしな iconvあたりを使ってデッチあげる手もあると思うが、状態をmbstate_tで 管理しなければならない辺りが悩ましげだし、wchar_tのバイト数が決まってないのも やっぱ面倒だよな
- 886 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 14:25:44 ]
- 使ったことないけど
ttp://tricklib.com/cxx/ex/babel/
- 887 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 15:04:43 ]
- CSimpleStringクラスのCopyChars()をそのまま使うと、「古い形式で使われています」と
警告がでるんですが、この関数の新しいバージョンってありますか? 探したけど見つかりませんでした
- 888 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 16:52:12 ]
- #define _SECURE_ATL
- 889 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 17:30:31 ]
- やっぱりないですよね
#pragma warning( disable : 4996 )で消しました
- 890 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 17:38:19 ]
- #if (_MSC_VER > 1310)
#pragma warning(push) #pragma warning(disabel:4996) #pragma warning(pop) #endif
- 891 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 23:16:38 ]
- template <class Ch,class Tr=std::char_traits<Ch> >
これって何してるのですか?
- 892 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 23:20:32 ]
- その気になれば、Trをstd::char_traits<Ch>でない何かにすることもできる、と
- 893 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 23:27:59 ]
- テンプレート引数のデフォルト値
- 894 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 23:32:10 ]
- template <class Ch,class Tr=std::char_traits<Ch> > class basic_string;
があるときに basic_string<char> ってするだけで basic_string<char, std::char_traits<char> > ってするのと一緒になるという手抜きができますよってこと?
- 895 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 23:59:19 ]
- そう
- 896 名前:デフォルトの名無しさん mailto:sage [2007/09/01(土) 00:05:08 ]
- basic_ofstreamを拡張して
EUC出力したいのですけど何か参考になる URLとかないでしょうか?
- 897 名前:デフォルトの名無しさん mailto:sage [2007/09/01(土) 00:13:15 ]
- http://
- 898 名前:デフォルトの名無しさん mailto:sage [2007/09/01(土) 00:23:06 ]
- つ[www.google.co.jp/]
- 899 名前:デフォルトの名無しさん mailto:sage [2007/09/01(土) 00:28:17 ]
- >>896
コード変換はストリームの管轄ではない。>>879-886 でも、basic_ostream<char>だとcodecvtは使われないのか? locale関係に挫折したら、邪道だけどストリームバッファを 作成して書き込み前の瀬戸際で変換をかけるという手もあると思う。
- 900 名前:デフォルトの名無しさん mailto:sage [2007/09/01(土) 10:26:32 ]
- unsigned char --> charの変換だけが欲しいのに
なんでここまで大がかりになるのかよーわからん。 C++の言語設計ポリシーがきもいのが原因なんだろうけどさー
- 901 名前:デフォルトの名無しさん mailto:sage [2007/09/01(土) 11:52:33 ]
- 【自己責任で】あっさり変換しちゃえ。
究極的にそれができるから、C/C++が好きだ 美しくスマートに書くのは確かにめんどいが
- 902 名前:!omikuji mailto:sage [2007/09/01(土) 12:47:39 ]
- t
- 903 名前:デフォルトの名無しさん mailto:sage [2007/09/01(土) 14:51:04 ]
- 興味本位でModern買って、今日届いたけど難しいんだよな?
もっと勉強してから読むか
- 904 名前:デフォルトの名無しさん mailto:sage [2007/09/01(土) 15:06:26 ]
- 第三章を読んで(いい意味で)爆笑するといいよ
- 905 名前:デフォルトの名無しさん mailto:sage [2007/09/01(土) 16:33:13 ]
- ttp://www.scl.kyoto-u.ac.jp/scl/appli/appli_manual/SUNWspro/WS6U2/ja/manuals/stdlib/user_guide/loc_io/19_4.htm
に、JIS<->Unicodeのcodecvtファセット実装例が載っているんだが、 mbstate_tを使わない場合(この実装例では使ってない。つか、mbstate_tなんて 処理系毎の実装詳細に属する代物だから、事実上使えないだろう)、 結局独自のストリーム型を定義するハメになるようだな。 無論wcout等の既存のストリームをimbue()することなんて出来やしない。 これじゃわざわざcodecvtとしてコード変換層を実装する意味はありはしない。 無駄とも思える複雑さを導入していながらこのていたらく。 C++のlocale, streamまわりの設計は本当に糞だな(実装の質も糞だが)。
- 906 名前:デフォルトの名無しさん mailto:sage [2007/09/01(土) 18:38:25 ]
- クラスのメンバにfstreamを持たせるのってよくない?
コピーコンストラクタをちゃんと書いてないとコピーできないよね。 なんかもっといい方法ってあるんだろうか。。
- 907 名前:デフォルトの名無しさん mailto:sage [2007/09/01(土) 22:00:09 ]
- fstream を局所的に使う設計に変更するとか
- 908 名前:デフォルトの名無しさん mailto:sage [2007/09/01(土) 22:58:17 ]
- refcount付きのfstream*入りクラスつくってメンバにいれるとか
- 909 名前:デフォルトの名無しさん mailto:sage [2007/09/01(土) 22:59:49 ]
- unicode_iteratorの最強さは異常
組み込みでも使えるな
- 910 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 01:52:58 ]
- memcpy.asmというファイルでエラーが出て困っています
これはどういう時に呼び出される命令なんでしょうか?
- 911 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 01:56:59 ]
- >>910 memcpy() したときだろ。
- 912 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 02:08:48 ]
- memcpy使ってないときにも落ちちゃうんですが
別の関数とかクラスが内部で使ってる場合もあるんですかね?
- 913 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 02:13:57 ]
- ああ
- 914 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 02:14:39 ]
- >912
そりゃ、メモリコピーなんて非常に基本的な機能だからいろんなところで使われてるだろう。
- 915 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 02:15:58 ]
- てかダメだろう落としてちゃ。もうプログラムングやめた方がいいんじゃねぇの
- 916 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 02:17:41 ]
- じゃあ原因の特定はむずかしいですね
どうしよう
- 917 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 02:18:06 ]
- デバッガでコールスタック見ればいいんじゃない
- 918 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 02:30:05 ]
- >>917
今やってみたら原因がわかった気がします ありがとうございました
- 919 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 04:18:43 ]
- 基本的な質問ですみません
VC++6でwindows コンソールアプリを作っていますが たとえば int nA; nA = 0; while(1){ print("count=%d",nA++); Sleep(500); } でカウンタ値を表示しますが マウスをコンソールにあわせると、タイトルバーに「選択」とでて処理が止まってしまいます これをやめさせるにはどーしたらよいでしょう?
- 920 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 04:28:44 ]
- >>919
コンソールウィンドウの「簡易編集モード」をオフにするとか。 あれ?マウスカーソル持って行っただけで選択になったっけ?
- 921 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 04:30:26 ]
- VCで/clrを付けると、GC(gcnew)が使えるようですが、これは.NETと関係あるんですか?
- 922 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 04:48:44 ]
- >>920
マウスを持っていって置くだけでなります
- 923 名前:919 mailto:sage [2007/09/02(日) 04:54:02 ]
- >>920
ありがとうございます 「簡易編集モード」でぐぐったら、プロパティで変えられるんですね 変えたらならなくなりましたが このウィンドウだけ、プログラム上から変える方法はあるんでしょうか?
- 924 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 05:16:22 ]
- >>923
さぁね。あとはこっち↓行けば? Win32API質問箱 Build56 pc11.2ch.net/test/read.cgi/tech/1186989201/
- 925 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 07:33:16 ]
- レジストリ書き換えれば(ry
- 926 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 07:58:40 ]
- >>921
コンパイラは基本的に.NETの中間言語 (CIL)を吐き(一部生の機械語もあり)、 実行には.NET Frameworkなどが必要になる。 所定の構文に従って書けば、C#など.NET言語で使えるクラスも書けるし、 参照設定すれば.NETのライブラリだって使えるしで、 お得なようで、ネイティブと.NET両方の苦悩を抱え込んで面倒くささも倍増。 それが/clrオプションで使えるC++/CLI。 C++/CLI について語ろうぜ Part2 pc11.2ch.net/test/read.cgi/tech/1142147319/l50
- 927 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 10:47:36 ]
- >>922
「置く」なんてオレ語を使うからややこしくなる。 クリックしているんじゃないの? クリックすることを「置く」なんて言っても通じないよ。
- 928 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 10:57:46 ]
- クリックのことを押すと言うのはよくやる。
- 929 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 11:00:04 ]
- 押すじゃなくて置く
- 930 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 11:06:05 ]
- 持っていく→アクティブ/非アクティブ関係なく窓の上
置く→アクティブで窓の上 で、アクティブにするのにクリックしたんだと思ったが違うのか
- 931 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 11:15:04 ]
- よし引っ張れ!
それだ
- 932 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 11:17:56 ]
- クリックしたんじゃねぇか
- 933 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 11:34:08 ]
- ダブルクリック→つっつく
- 934 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 12:42:48 ]
- ドラッグ→ひっぱる
- 935 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 12:46:11 ]
- 最小化→消す
- 936 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 12:47:15 ]
- プー吹いた
- 937 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 19:08:55 ]
- CかC++にはinterfaceっていう予約語があるんですか?DirectX関係のソースに使われてました。
大文字でもなくマクロではないと思うし、処理系の拡張なら__interfaceという感じになってそうですし、 VC++だと色が変わるので、予約語だと思ったんですが。 でもWikipediaとかの予約語一覧にも載ってない…
- 938 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 19:17:37 ]
- C#じゃね?
- 939 名前:デフォルトの名無しさん [2007/09/02(日) 19:20:41 ]
- ねーよ
- 940 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 19:23:32 ]
- virtual
- 941 名前:デフォルトの名無しさん [2007/09/02(日) 19:25:45 ]
- struct
- 942 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 19:27:14 ]
- import
- 943 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 19:28:41 ]
- extern
- 944 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 19:29:39 ]
- null
- 945 名前:デフォルトの名無しさん [2007/09/02(日) 19:30:43 ]
- po
- 946 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 19:39:52 ]
- inter
- 947 名前:デフォルトの名無しさん [2007/09/02(日) 19:41:16 ]
- >>941
"interface" という語は C++ の予約語ではなく、 該当する COM ヘッダーの中で "struct" として #defined されます (C++ では、構造体が標準でプライベートではなくパブリックの継承とアクセスを使用することを除けば、クラスと構造体は同じであることを思い出してください)。 msdn.microsoft.com/library/ja/jpdnguion/htm/msdn_drguion020298.asp
- 948 名前:デフォルトの名無しさん mailto:947 [2007/09/02(日) 19:43:53 ]
- >>937←>>947
- 949 名前:デフォルトの名無しさん [2007/09/02(日) 19:52:22 ]
- 陸上では日本人では全く勝負にならんが、コンピュータでもそうなんですかね?
Code Projectなんかがヘビーなコンポーネントを公開しているのはほとんど海外組み
- 950 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 20:30:52 ]
- ICFPの上位にgoogleのチームに混じって日本人が入っていたりするよ
- 951 名前:デフォルトの名無しさん [2007/09/02(日) 21:52:22 ]
- すみません
C言語でtelnetした後に続けてサーバーに出力を自動で送信する方法はありませんか? エミュレータと通信してましてエミュレータと接続した後に エミュレータ上のモニターに対してコマンドを送りたいです 具体的には system("telnet 127.0.0.1 5556"); した後にqというコマンドをエミュレータのモニターに送りたいのですが スレッドが一つだと処理がtelnetから動かず スレッドを二つにして system("q"); と入力を行うとエミュレータでなくDOS上でqが行われるようでうまく動きません
- 952 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 21:58:19 ]
- >>951
っ popen
- 953 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 21:58:30 ]
- OSを書け
- 954 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 22:01:30 ]
- >>951
そういう場合はexpectを使え、ということになっている
- 955 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 22:12:00 ]
- 一瞬>>953が煽りに見えたが、そうだ、ターゲットOSを書け
- 956 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 22:12:29 ]
- みんな詳しいな
おれなんて文法理解するだけで精一杯だよ
- 957 名前:デフォルトの名無しさん [2007/09/02(日) 22:15:50 ]
- やりたい事があったら文法なんて関係ないさ。
- 958 名前:デフォルトの名無しさん [2007/09/02(日) 22:16:34 ]
- 説明不足すみませんでした
OSはWinXP エミュレータはQEMU エミュレータ上のOSはDebian Cの開発環境はVisualStdioを使っています そしてWinXP上のC言語とQEMUで通信しております
- 959 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 22:17:24 ]
- >>956
・簡単なアプリを作る→その肉付けをしていき内容を濃くする ・簡単なアプリを作る→簡単なアプリを作る ・高度なアプリを作る→半年後見直すと自分で組んだプログラムが恥ずかしく感じ組みなおす ・高度なアプリを作る→挫折する これらを繰り返していくうちに身に付くから、今できることをやるだけで色んな知識を覚えていくよ
- 960 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 22:36:39 ]
- >>957
>>959 もともと発想力がないからか、自分で課題が思い浮かばないけど とりあえず持ってる参考書は全て読んで、サンプルだけでも動かして ちょこっと変更したりすることをしばらく続けて見ようと思う いまはイテレーターアダプタと格闘中。
- 961 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 22:43:14 ]
- >>951 >>958
多分勘違いしてはる system()はコマンドを実行するようなモノであって、 線路(パイプ、FILE*など含む)に送信する働きはない 試作では、send(),recv()かなんかを使うことになるのでは そっからはやり方はいろいろあるけど、自力で見出していくのでは
- 962 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 22:46:05 ]
- >>951
例えばTeraTermを使っていいなら、自動運転用マクロ言語内蔵だから接続先からの特定のキーワードを待って それに対して一定の反応を返すことくらいちょちょいのぱーだよ。
- 963 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 23:05:08 ]
- >>951
ソケット開いてtelnet話せばいいだけだろ なんでそんな単純な事も解からないんだ 氏ねよw
- 964 名前:デフォルトの名無しさん [2007/09/02(日) 23:08:25 ]
- >>960
サンプルだけ動かして 「俺、C++できるよ」 なんて言ってるような奴にはならないでね
- 965 名前:デフォルトの名無しさん [2007/09/02(日) 23:10:29 ]
- >961
system関数は使えないんですね・・・ recv()考えて見ます >962 それはちょっと使えそうにないので他の手を考えてみます
- 966 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 23:11:21 ]
- >>964
まだ初期段階だから先は長いと思ってる まあ仕事でC++使えば一気に向上するとは思うけど
- 967 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 23:12:27 ]
- >>965
詳細はよくわからんが、connectしてデータをsendすればいいだけではないの??
- 968 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 23:26:00 ]
- telnet特有のネゴシエーションとか、ログイン処理とか
URGデータの処理とか考えなけりゃね。
- 969 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 23:28:07 ]
- >>968
そうかログイン処理が必要だな こりゃ失礼
- 970 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 23:34:45 ]
- 今時telnetってとこには突っ込まんが
せめてライブラリ使うかexpectに汁っての 下らない仕事のためにtelnetを喋るTCPクライアントをわざわざ手書きするなんて ナンセンス極まりない
- 971 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 23:46:27 ]
- 思うに、telnetで接続して、"q\n"かなんか、何か簡単にシグナルしたかったんだろう
そのくらいの軽務なら、connect(), recv()でいいんじゃないかと思った CreateThreadはできるけど、system()がわからない。 きっと、IPC(広義の)の初心者さんなんだ ヒントくらいでいいんじゃまいかとw
- 972 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 23:54:37 ]
- telnetぐらい3日でかけるだろ
どうせ暇なニート学生だろ?
- 973 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 23:59:55 ]
- ニート学生って言語矛盾じゃないか
- 974 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 00:01:34 ]
- どうせ学校もろくにいかないで
2chが動画サイトめぐりだろ 身分があるだけでニートとかわらんだろw
- 975 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 00:08:38 ]
- 何がしたいのかは知らないが、
そもそも telnet を使う必要が無いんじゃないか?
- 976 名前:デフォルトの名無しさん [2007/09/03(月) 00:10:10 ]
- Cの基本的な文法については勉強して次は実際にSourceForgeでオープンソースの
プログラムを読もうと思っていたのですが難しすぎて分かりません みなさんはある程度文法の勉強をしてからどのようにして勉強していきましたか?
- 977 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 00:13:36 ]
- 作りたいものを作る。それが一番。
- 978 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 00:15:51 ]
- >>976
Cなら簡単に1万行ぐらいまでなら 読めるようになる方法がある。読めない文法だけ 飛ばしてたぶん処理追えるようにはなるとは思う 環境ちょっと限定になるけどな
- 979 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 00:16:17 ]
- >>976
必要に迫られれば、驚くほどの速度で習得可能 文法の次はアルゴリズムの勉強がお勧め アルゴリズムに関する説明(自然言語)を元にC言語ソースにする これが結構難しい
- 980 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 00:18:20 ]
- 読むのと書くのは別の能力。
- 981 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 00:20:37 ]
- 書くスキルあげつつ読みたいなら
モジュールバラしテクニックを身に着けるといいよ。 単純にどこで処理が範囲かわかったら あとは改造する楽しいよ。
- 982 名前:デフォルトの名無しさん [2007/09/03(月) 00:25:40 ]
- 読むと書くのは別の能力だというのは分かりますが
ある程度うまい書き方とか定石なども学びたいと思いまして 今コーディングの本を読んでいるのですがいきなり書いてそれに慣れてしまうと ものすごい危険なコードを何の意識もなく書いてしまったりしてしまうのかと思いまして >>979 今読んでいる本が終わったらアルゴリズムの本も読んでみようと思います
- 983 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 00:30:13 ]
- >>982
最初から完璧なコードが書けるなどと思うな 最初は誰でもつたないんだ それを気にせずコード書け 書かなきゃいつまでたっても上手くはならん
- 984 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 00:33:16 ]
- C++だったらそれこそ20冊ぐらい読まないと駄目だからなぁ…
と言っても読みながら書かないと理解できないような内容だから 読もうとしてる内に書く経験も積むことになるが
- 985 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 00:34:26 ]
- 20冊って何の本だよ
- 986 名前:デフォルトの名無しさん [2007/09/03(月) 00:35:03 ]
- >>983
今は本を読んで演習問題などでコードを書いているという状況です >>984 何かお勧めの本などはありませんか?
- 987 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 00:38:12 ]
- 文法覚えたなら簡単なソフト作ればいいんじゃね?
何でもいいから動くもの作らんと、モチベーション維持が大変だ 目標があってC言語勉強したんだろうから、目標までの道のりを 考えて一歩ずつ進むしかないよ。 といいつつも、俺はなんもしてないな。
- 988 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 00:41:22 ]
- 手じかに役に立つ類のちょろっとしたものを書きたいのなら
ぶっちゃけCは向いてないよあまり
- 989 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 00:42:45 ]
- 演習問題を一通りやって何かを作ろうとしてもアイディアが出なければ
大学とか専門学校で出される課題のようなプログラムを作るといいよ ここには宿題スレもある事だし
- 990 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 00:44:16 ]
- ライブラリとかマクロとか使ってカスタムすればLL言語並の「軽い」C++ができるぜ
ただし作った奴以外には読めない使えない代物になるけど
- 991 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 00:46:46 ]
- >>986
人に薦められた本が君に適している確率はかなり低いよ。 マスターしたけりゃ立ち読みして読みやすいと感じた本を読め。 仮にその本が結局ハズレでも、その次に選ぶ本はより君に適しているはず。
- 992 名前:デフォルトの名無しさん [2007/09/03(月) 00:52:56 ]
- >>987
どうやれば市販のソフトのようなものが作れるかもよく分からない状況で みなさんvisual studioとか使ってるんですか? >>991 はいわかりました
- 993 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 00:55:13 ]
- VisualStudio使ってるよ
VC++とVC#だけだけど
- 994 名前:デフォルトの名無しさん [2007/09/03(月) 00:58:05 ]
-
>>993 どのようなアプリをつくったんですか? 公開できるようなものではないと思いますがw
- 995 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 01:00:37 ]
- 次スレ
【初心者歓迎】C/C++室 Ver.42【環境依存OK】 pc11.2ch.net/test/read.cgi/tech/1188748806/l50
- 996 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 01:02:26 ]
- うめるか
- 997 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 01:03:47 ]
- >>994
馬鹿にしてんのか
- 998 名前:992 [2007/09/03(月) 01:07:49 ]
- >>997
994は僕じゃないです
- 999 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 01:13:49 ]
- うm
- 1000 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 01:14:10 ]
- 仕事で作った物って公開できないのが大半だな・・・
- 1001 名前:1001 [Over 1000 Thread]
- このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
|

|