K.Maebashi's BBS

ご自由に書き込んでください。雑談も可。
テスト書き込みの類はテスト用掲示板にどうぞ

[日付順表示] [日付順インデックス] [スレッド順インデックス]

新規投稿 | 開設者ホームページへ戻る | ヘルプ

[876] crowbar ver.0.4.02
投稿者:kit
2007/02/20 02:13:25

> そろそろWindowsに特化してもいいんじゃないかと思っていたり(謎)。 これって昔聞いたあの話の関連ですかね。 だとすると、SDL をライブラリとして使えば、Windows に特化しなくても いいのではないかって気もします。大学祭で見たアレも SDL で作ってた そうです。たかだか千数百行であれくらいできてしまうってのも驚き でしたが。
[この投稿を含むスレッドを表示] [この投稿を削除]
[874] 管理者により削除されました
2007/02/20 02:18:23

広告なので削除しました。
[この投稿を含むスレッドを表示]
[872] Re:List 4-6
投稿者:(ぱ)
2007/02/20 02:13:25

> たとえ話は好きじゃないですが、材木屋さんになったと想像してください。 >材木がコンベアーに(縦方向に)乗って流れてくるのですが、材木の長さはまちまちです。 >あなたはそれを箱詰めして発送しなければなりません。 1点補足します。 あなたが立っている場所からはコンベアーの端しか見えず、材木はとても長いので、 材木が最後まで流れてこないと材木の長さがわからない、と思ってください。 …やっぱり、このたとえ話もはずしたかな?
[この投稿を含むスレッドを表示] [この投稿を削除]
[871] Re:List 4-6
投稿者:(ぱ)
2007/02/20 02:13:25

>お世話になります。プログラミング初心者です。 > >「ポインタ完全制覇」のp218のList 4-6のプログラムで質問させてください。 > >76--79行目でmallocを使っているのは何故なのでしょうか。 > >代わりに、 > >return st_line_buffer; > >では駄目なのでしょうか。  マスタングさんが書いておられるように、この書き方では、2行目が読み込まれたときに1行目の領域が上書きされてしまいます。st_line_bufferが指す先の領域はひとつしかないからです。  ただし、たとえば以下のように書けば、 temp = st_line_buffer; st_line_buffer = NULL; st_current_buffer_size = NULL; return temp;  次のread_line()の呼び出しでは新たな領域が割り当てられますから、正しく動作することでしょう。ただし、st_line_bufferはALLOC_SIZE(256バイト)ずつまとめて伸びていきますから、行の長さによってはメモリが無駄になります。  256バイトずつではなく、1バイトずつrealloc()していけばこの無駄はなくせますが、p.221で説明しているようにrealloc()はそれなりに重い関数なので、あまり頻繁にrealloc()しないため、こうしているわけです。  List 4-6では、以下の戦略をとっています。 (1)ファイルから文字を1文字ずつ読み込み、いったん「一時置き場」に蓄える。 (2)「一時置き場」はひとつしかない。 (3)行が「一時置き場」に入りきらない場合、「一時置き場」は256バイトを単位に  まとめて拡張される。一時置き場が縮むことはない。 (4)行を最後まで読み終わり、行の長さが確定した時点で、その行の長さに  ぴったり合わせたサイズの領域を新たに確保し、そこにコピーして、  利用者に返す。  たとえ話は好きじゃないですが、材木屋さんになったと想像してください。材木がコンベアーに(縦方向に)乗って流れてくるのですが、材木の長さはまちまちです。あなたはそれを箱詰めして発送しなければなりません。  コンベアーの端に広めの作業領域を作り、いったん材木をそこに置いて、正確な長さを測ってから、ぴったりの大きさの箱を作るという方法が無駄がないと思いませんか? このプログラムではそういう方針をとっているわけです。  
[この投稿を含むスレッドを表示] [この投稿を削除]
[870] Re:定義
投稿者:(ぱ)
2007/02/20 02:13:25

>僕が混乱したのは、きっと、1次式の定義に「式」という1次式を含む未定義の >クラスが登場したと受け止めたからだと思います。 その受け止め方は正解です。そして再帰的定義というのはそういうものです。 ちょうどうちのページにこんな文書がありまして、簡易的な電卓の構文規則を載せています。 http://kmaebashi.com/programmer/devlang/yacclex.html 7: expression /* 「式」とは… */ 8: : term /* 「項」、 */ 9: | expression ADD term /* または、「式」 + 「項」 */ 10: | expression SUB term /* または、「式」 - 「項」 */ 11: ; 12: term /* 「項」とは、 */ 13: : primary_expression /* 「一次式」、 */ 14: | term MUL primary_expression /* または、「項」 * 「一次式」 */ 15: | term DIV primary_expression /* または、「項」 / 「一次式」 */ 16: ; 17: primary_expression /* 「一次式」とは… */ 18: : DOUBLE_LITERAL /* 実数のリテラル */ 19: ; この電卓は括弧が使えないのでprimary_expressionの定義は異なりますが、 この電卓でも、式の定義にはやっぱり式が登場します。 K&Rをお持ちであれば、巻末の構文規則(p.298あたり)でCの式の構文が定義されています。 >式は1次式から構成されるものなのでしょうが、どのように構成されるものをそう言うのか、 >そこでの記述では不明だと思います。定義になっていないのでは。 ポインタ完全制覇における式の定義に関する説明は、 ・「式には1次式と呼ばれるものがあります」 ・「式に対して演算子を適用したり、演算子でもって式と式をつなぎ合わせたもののことも、   また式と呼びます」  となっています。  Cには関数呼び出し等を含めたくさんの演算子がありますし、sizeof(型)はどうなるのか等、この定義では曖昧すぎるというご意見はあるかと思いますが、この場所でそれを延々と書くのもよろしくないと判断した、のだと思います。ずいぶん前の話なので記憶が曖昧ですが。  
[この投稿を含むスレッドを表示] [この投稿を削除]
[869] Re:List 4-6
投稿者:マスタング
2007/02/20 02:13:25

一部、間違えました。 (誤) >char s1, s2; (正) char *s1, *s2;
[この投稿を含むスレッドを表示] [この投稿を削除]
[868] Re:List 4-6
投稿者:マスタング
2007/02/20 02:13:25

>「ポインタ完全制覇」のp218のList 4-6のプログラムで質問させてください。 > >76--79行目でmallocを使っているのは何故なのでしょうか。 > >代わりに、 > >return st_line_buffer; > >では駄目なのでしょうか。違いがわからないのですが。 これは、オブジェクト指向の防御的コピーに近いですが、 read_line()が、st_line_bufferを素直に返している訳ではないので ちょっと違うかもしれません。 read_line.cファイルが1つのオブジェクト、st_line_bufferがprivateな メンバと考えると、実装詳細を直接戻すと、カプセル化が崩れるという 考え方も可能だと思います。 違いは以下です。 // もし、read_line()で、st_line_bufferを返す場合 char s1, s2; s1 = read_line(fp); // 例えば、s1が、"abc" s2 = read_line(fp); // 例えば、s2が、"def" // ここで、s1もs2も、"def"となる! // もし、read_line()で、コピーを返せば、 // s1は"abc"、s2は"def"となる。
[この投稿を含むスレッドを表示] [この投稿を削除]
[867] List 4-6
投稿者:黒霧お湯割
2007/02/20 02:13:25

お世話になります。プログラミング初心者です。 「ポインタ完全制覇」のp218のList 4-6のプログラムで質問させてください。 76--79行目でmallocを使っているのは何故なのでしょうか。 代わりに、 return st_line_buffer; では駄目なのでしょうか。違いがわからないのですが。 ご教授いただけると幸いです。
[この投稿を含むスレッドを表示] [この投稿を削除]
[866] Re:定義
投稿者:黒霧お湯割
2007/02/20 02:13:25

ご回答ありがとうございました。 > 説明不足でしたでしょうか。 > 「定義するもの自身をその定義で書いた」もののことを「再帰的定義」と言いまして、プログラミングの世界ではさほど珍しいものではありません。 僕が混乱したのは、きっと、1次式の定義に「式」という1次式を含む未定義のクラスが登場したと受け止めたからだと思います。 式は1次式から構成されるものなのでしょうが、どのように構成されるものをそう言うのか、そこでの記述では不明だと思います。定義になっていないのでは。
[この投稿を含むスレッドを表示] [この投稿を削除]
[865] Re:定義
投稿者:774RR
2007/02/20 02:13:25

>そのため 「部分式 1+2*3 」に括弧をつけて (1+2*3) と書くと、これが部分式になるという規則が必要なのです。 typo これぢゃ意味判らん orz 部分式 1+2*3 に括弧をつけて (1+2*3) と書くと、これが一次式になる ですな。
[この投稿を含むスレッドを表示] [この投稿を削除]
[864] Re:定義
投稿者:774RR
2007/02/20 02:13:25

もっとあえて蛇足するなら (1+2*3)+4*5 とかを考えるといいかもしれません この例では括弧内を先に、括弧外の + を後に評価してもらわなければなりません。 もっというなら + より先に 4*5 を評価してもらわなければなりません。 そのため 「部分式 1+2*3 」に括弧をつけて (1+2*3) と書くと、これが部分式になるという規則が必要なのです。 実際のプログラムも再帰を使います。
[この投稿を含むスレッドを表示] [この投稿を削除]
[863] Re:定義
投稿者:(ぱ)
2007/02/20 02:13:25

>1次式の定義の中で、「式を()で囲んだもの.」とあるのですが、 >定義するもの自身をその定義で書いたらいけないと思うのですが。  説明不足でしたでしょうか。  「定義するもの自身をその定義で書いた」もののことを「再帰的定義」と言いまして、プログラミングの世界ではさほど珍しいものではありません。 「再帰的定義」でGoogle: http://www.google.co.jp/search?hl=ja&q=%E5%86%8D%E5%B8%B0%E7%9A%84%E5%AE%9A%E7%BE%A9&lr= >きっと、その上3つを指しているんだと思うのですが・・・。 ポインタ完全制覇p.165より引用します。 | 1次式とは以下のものを指します。 | ・識別子(変数名、関数名のこと) | ・定数(整数定数と浮動小数点定数を含む) | ・文字列リテラル(""で囲まれた文字列) | ・式を()で囲んだもの  「その上3つ」と解釈すると、「(hoge)」とか「(0.5)」とか「("abc")」とかになりますが、「(hoge + 5)」と書いても1次式なので、その解釈ではまずいです。「その上3つ」は「1次式」の定義ですが、4つ目では「『式』を()で囲んだもの」と書いています。
[この投稿を含むスレッドを表示] [この投稿を削除]
[862] 定義
投稿者:黒霧お湯割
2007/02/20 02:13:25

「C言語ポインタ完全制覇」の165ページなのですが。1次式の定義の中で、「式を()で囲んだもの.」とあるのですが、定義するもの自身をその定義で書いたらいけないと思うのですが。きっと、その上3つを指しているんだと思うのですが・・・。僕には精神衛生上きついっす。
[この投稿を含むスレッドを表示] [この投稿を削除]
[861] Re:「疑り深いあなたのためのオブジェクト指向再入門」読みました
投稿者:(ぱ)
2007/02/20 02:13:25

>これは、オブジェクト指向とは言わないのではないでしょうか? >あえて言うなら、オブジェクト指向の特徴の一つである『データ抽象化』でしか >ないと思います。オブジェクト指向というには、『継承』の概念が実装されている >必要もあると思います。  まあそうなのかもしれませんけど、「どこまでやってるとオブジェクト指向であるか」といった用語の定義的な議論は、既にずいぶん曖昧な定義で使われている「オブジェクト指向」という言葉については、不毛だと思います。 前にもあげたページだと思いますが http://www.shiro.dreamhost.com/scheme/trans/reesoo-j.html | オブジェクト指向というものが動く標的であるため、オブジェクト指向の熱心な | 支持者はこのメニューのうちの適当なサブセットを気まぐれに選んで、それを以って | 他の言語はオブジェクト指向ではないと説得しようとする。 私も以下のように書きました。 http://kmaebashi.com/programmer/object/intro.html | ※2 「それは抽象データ型だ」という意見もあるかもしれませんが、抽象データ型は | オブジェクト指向に至るためには必須の概念です。 Matzにっきより。 http://www.rubyist.net/~matz/20030729.html#p01 |「オブジェクト指向」のもっとも重要な概念は通常のプログラミングにも登場して | いる。たとえば、Cで | FILE *f = fopen(path, "r"); | という呼び出しは「pathにあるファイルをオープンして、ファイルオブジェクトを | 得る」という処理そのものだ。別にオブジェクト指向は必要ない。CのFILE*には | fprintf()やfclose()などのいくつかの「メソッド」がある。 >(ただし、Xtも単なる抽象データ型だったかも。継承を実装していたか記憶が > 定かではありません。 継承は実現していましたね。たとえばMotifのRowColumnはManagerのサブクラスです。 # んで、JavaのレイアウトマネージャがComponentクラス階層の中になく、 # プラグイン的に突っ込むようになっているのを見て衝撃を受けましたとも。
[この投稿を含むスレッドを表示] [この投稿を削除]
[860] Re:「疑り深いあなたのためのオブジェクト指向再入門」読みました
投稿者:ytanaka
2007/02/20 02:13:25

>オブジェクト指向の標準関数がありますね。FILE * を介して行なうファイル入出力です これは、オブジェクト指向とは言わないのではないでしょうか? あえて言うなら、オブジェクト指向の特徴の一つである『データ抽象化』でしかないと思います。オブジェクト指向というには、『継承』の概念が実装されている必要もあると思います。 >その他、X Window System の Xlib やそのツールキットもオブジェクト指向です。 私は、学生の頃、Xtのソースを読んで、『なんだこのコーデイングは?なんで構造体に関数のポインタぶち込んでるんや?』『おお!そういうことか!すげー!』と凄い衝撃を覚えました。 このころは、まだオブジェクト指向という言葉を知らなかったのですが、あとからC++を勉強したときには、C言語のテクニックを駆使して無理やりオブジェクト指向に仕上げたXtはやっぱり凄かったんだと再認識しましたね。(ただし、Xtも単なる抽象データ型だったかも。継承を実装していたか記憶が定かではありません。でも、構造体に関数をぶち込んでいる時点でFILEとfopen等よりも高度ですね。関数のポインタを書き換えて振る舞いを変えさせることもできましたしね。)
[この投稿を含むスレッドを表示] [この投稿を削除]
[859] Re:JAVA VMエラー
投稿者:aaa
2007/02/20 02:13:25

>本屋でJAVA謎+落とし穴徹底解明を見つけました。 >あまりにも難しい内容ですが今困っていますので教えてください。 >WIN XPSP2で証券会社のHPにアクセスすると下記ERRで強制終了します。 >またSUN JAVAコンソールをクイックしても同じERRになります。 > > ># ># An unexpected error has been detected by HotSpot Virtual Machine: ># ># EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x6d6c20e6, pid=1228, tid=2324 ># ># Java VM: Java HotSpot(TM) Client VM (1.5.0_02-b09 mixed mode) ># Problematic frame: ># V [jvm.dll+0x820e6] ># > >--------------- T H R E A D --------------- > >Current thread (0x0562a6a8): JavaThread "main" [_thread_in_vm, id=2324] > >siginfo: ExceptionCode=0xc0000005, reading address 0x00000008 > >Registers: >EAX=0x00000000, EBX=0x00000000, ECX=0x00000008, EDX=0x00000000 >ESP=0x069f5f74, EBP=0x069f5fac, ESI=0x0562a6a8, EDI=0x00000000 >EIP=0x6d6c20e6, EFLAGS=0x00010246 > >Top of Stack: (sp=0x069f5f74) >0x069f5f74: 6d6c494b 00000000 00000000 0562a764 >0x069f5f84: 6d317763 0000000c 09352923 00000000 >0x069f5f94: 100f38a0 00000000 00000000 056cf3a8 >0x069f5fa4: 0562a6a8 00000000 069f5fd0 6d304c3a >0x069f5fb4: 0562a764 6d317774 00000000 0562a764 >0x069f5fc4: 00000000 00000000 0562a764 069f5ff8 >0x069f5fd4: 6d30543a 0562a764 069f6003 6d317774 >0x069f5fe4: 6d317768 6d317750 055f5684 0562a764 > >Instructions: (pc=0x6d6c20e6) >0x6d6c20d6: e8 0c 2a ff ff c3 8b 44 24 04 8b 0d b0 64 7a 6d >0x6d6c20e6: 8b 04 01 c3 8b 44 24 04 8b 0d ac 64 7a 6d 8b 04 > > >Stack: [0x06900000,0x06a00000), sp=0x069f5f74, free space=983k >Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code) >V [jvm.dll+0x820e6] >C [java.dll+0x4c3a] >C [java.dll+0x543a] >C [java.dll+0x54d3] >C [java.dll+0x18ba] >j java.lang.ClassLoader$NativeLibrary.load(Ljava/lang/String;)V+0 >j java.lang.ClassLoader.loadLibrary0(Ljava/lang/Class;Ljava/io/File;)Z+300 >j java.lang.ClassLoader.loadLibrary(Ljava/lang/Class;Ljava/lang/String;Z)V+48 >j java.lang.Runtime.load0(Ljava/lang/Class;Ljava/lang/String;)V+57 >j java.lang.System.load(Ljava/lang/String;)V+7 >v ~StubRoutines::call_stub >V [jvm.dll+0x818e8] >V [jvm.dll+0xd4989] >V [jvm.dll+0x817b9] >V [jvm.dll+0x887ae] >C [jpishare.dll+0x4380] >C [jpishare.dll+0x1eb2] >C [jpiexp32.dll+0x5744] >C [npjpi150_02.dll+0x1abf] >C [ole32.dll+0x2206a] >C [ole32.dll+0x40a03] >C [ole32.dll+0x4071d] >C [ole32.dll+0x27b76] >C [ole32.dll+0x27a62] >C [ole32.dll+0x27c48] >C [ole32.dll+0x27bf4] >C [ole32.dll+0x4112b] >C [ole32.dll+0x410e2] >C [ole32.dll+0x27c9b] >C [ole32.dll+0x27a62] >C [ole32.dll+0x27a7c] >C [ole32.dll+0x27a62] >C [ole32.dll+0x278f6] >C [ole32.dll+0x277af] >C [ole32.dll+0x27731] >C [urlmon.dll+0x3c5c7] >C [urlmon.dll+0x3cb1e] >C [urlmon.dll+0x3ce5a] >C [mshtml.dll+0x273785] >C [mshtml.dll+0x273afa] >C [mshtml.dll+0x26e889] >C [mshtml.dll+0x275cfe] > >Java frames: (J=compiled Java code, j=interpreted, Vv=VM code) >j java.lang.ClassLoader$NativeLibrary.load(Ljava/lang/String;)V+0 >j java.lang.ClassLoader.loadLibrary0(Ljava/lang/Class;Ljava/io/File;)Z+300 >j java.lang.ClassLoader.loadLibrary(Ljava/lang/Class;Ljava/lang/String;Z)V+48 >j java.lang.Runtime.load0(Ljava/lang/Class;Ljava/lang/String;)V+57 >j java.lang.System.load(Ljava/lang/String;)V+7 >v ~StubRoutines::call_stub > >--------------- P R O C E S S --------------- > >Java Threads: ( => current thread ) > 0x066f0878 JavaThread "traceMsgQueueThread" daemon [_thread_blocked, id=2540] > 0x066decc0 JavaThread "AWT-Windows" daemon [_thread_in_native, id=560] > 0x066de8d8 JavaThread "AWT-Shutdown" [_thread_blocked, id=460] > 0x066dab40 JavaThread "Java2D Disposer" daemon [_thread_blocked, id=1336] > 0x06657588 JavaThread "Low Memory Detector" daemon [_thread_blocked, id=2148] > 0x0659d750 JavaThread "CompilerThread0" daemon [_thread_blocked, id=292] > 0x06554df8 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=2536] > 0x06592a50 JavaThread "Finalizer" daemon [_thread_blocked, id=2532] > 0x0563a580 JavaThread "Reference Handler" daemon [_thread_blocked, id=2528] >=>0x0562a6a8 JavaThread "main" [_thread_in_vm, id=2324] > >Other Threads: > 0x06581580 VMThread [id=2496] > 0x05659768 WatcherThread [id=744] > >VM state:not at safepoint (normal execution) > >VM Mutex/Monitor currently owned by a thread: None > >Heap > def new generation total 576K, used 334K [0x100b0000, 0x10150000, 0x10810000) > eden space 512K, 52% used [0x100b0000, 0x100f3a80, 0x10130000) > from space 64K, 100% used [0x10140000, 0x10150000, 0x10150000) > to space 64K, 0% used [0x10130000, 0x10130000, 0x10140000) > tenured generation total 1408K, used 201K [0x10810000, 0x10970000, 0x160b0000) > the space 1408K, 14% used [0x10810000, 0x10842500, 0x10842600, 0x10970000) > compacting perm gen total 8192K, used 3930K [0x160b0000, 0x168b0000, 0x1a0b0000) > the space 8192K, 47% used [0x160b0000, 0x16486a20, 0x16486c00, 0x168b0000) >No shared spaces configured. > >Dynamic libraries: >0x00400000 - 0x00419000 C:\Program Files\Internet Explorer\iexplore.exe >0x7c940000 - 0x7c9dd000 C:\WINDOWS\system32\ntdll.dll >0x7c800000 - 0x7c931000 C:\WINDOWS\system32\kernel32.dll >0x77bc0000 - 0x77c18000 C:\WINDOWS\system32\msvcrt.dll >0x77cf0000 - 0x77d7f000 C:\WINDOWS\system32\USER32.dll >0x77ed0000 - 0x77f16000 C:\WINDOWS\system32\GDI32.dll >0x77f20000 - 0x77f96000 C:\WINDOWS\system32\SHLWAPI.dll >0x77d80000 - 0x77e29000 C:\WINDOWS\system32\ADVAPI32.dll >0x77e30000 - 0x77ec1000 C:\WINDOWS\system32\RPCRT4.dll >0x76350000 - 0x764bc000 C:\WINDOWS\system32\SHDOCVW.dll >0x765c0000 - 0x76653000 C:\WINDOWS\system32\CRYPT32.dll >0x77c40000 - 0x77c52000 C:\WINDOWS\system32\MSASN1.dll >0x75410000 - 0x75485000 C:\WINDOWS\system32\CRYPTUI.dll >0x76be0000 - 0x76c0e000 C:\WINDOWS\system32\WINTRUST.dll >0x76c40000 - 0x76c68000 C:\WINDOWS\system32\IMAGEHLP.dll >0x770d0000 - 0x7715c000 C:\WINDOWS\system32\OLEAUT32.dll >0x76970000 - 0x76aad000 C:\WINDOWS\system32\ole32.dll >0x59250000 - 0x592a4000 C:\WINDOWS\system32\NETAPI32.dll >0x76660000 - 0x76704000 C:\WINDOWS\system32\WININET.dll >0x76f10000 - 0x76f3c000 C:\WINDOWS\system32\WLDAP32.dll >0x77bb0000 - 0x77bb8000 C:\WINDOWS\system32\VERSION.dll >0x762e0000 - 0x762fd000 C:\WINDOWS\system32\IMM32.DLL >0x60740000 - 0x60749000 C:\WINDOWS\system32\LPK.DLL >0x73f80000 - 0x73feb000 C:\WINDOWS\system32\USP10.dll >0x77160000 - 0x77262000 C:\WINDOWS\WinSxS\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.2600.2180_x-ww_a84f1ff9\comctl32.dll >0x7d5b0000 - 0x7ddad000 C:\WINDOWS\system32\SHELL32.dll >0x5ab60000 - 0x5abf7000 C:\WINDOWS\system32\comctl32.dll >0x58730000 - 0x58768000 C:\WINDOWS\system32\uxtheme.dll >0x74660000 - 0x746ab000 C:\WINDOWS\system32\MSCTF.dll >0x75ed0000 - 0x75fcd000 C:\WINDOWS\system32\BROWSEUI.dll >0x20000000 - 0x20010000 C:\WINDOWS\system32\browselc.dll >0x76d90000 - 0x76db2000 C:\WINDOWS\system32\appHelp.dll >0x76f80000 - 0x76fff000 C:\WINDOWS\system32\CLBCATQ.DLL >0x77000000 - 0x770ab000 C:\WINDOWS\system32\COMRes.dll >0x73620000 - 0x7364e000 C:\WINDOWS\system32\msctfime.ime >0x4edc0000 - 0x4ee16000 C:\WINDOWS\system32\imjp81.ime >0x648f0000 - 0x649c0000 C:\WINDOWS\system32\imjp81k.dll >0x3b100000 - 0x3b11b000 C:\WINDOWS\IME\IMJP8_1\Dicts\IMJPCD.DIC >0x75c40000 - 0x75cdc000 C:\WINDOWS\system32\urlmon.dll >0x77fa0000 - 0x77fb1000 C:\WINDOWS\system32\Secur32.dll >0x76570000 - 0x765c0000 C:\WINDOWS\System32\cscui.dll >0x76550000 - 0x7656c000 C:\WINDOWS\System32\CSCDLL.dll >0x76040000 - 0x76199000 C:\WINDOWS\system32\SETUPAPI.dll >0x10000000 - 0x100af000 c:\program files\google\googletoolbar1.dll >0x71a00000 - 0x71a0b000 C:\WINDOWS\system32\WSOCK32.dll >0x719e0000 - 0x719f7000 C:\WINDOWS\system32\WS2_32.dll >0x719d0000 - 0x719d8000 C:\WINDOWS\system32\WS2HELP.dll >0x76af0000 - 0x76b1b000 C:\WINDOWS\system32\WINMM.dll >0x5a820000 - 0x5a827000 C:\WINDOWS\system32\serwvdrv.dll >0x58a60000 - 0x58a67000 C:\WINDOWS\system32\umdmxfrm.dll >0x74cd0000 - 0x74d61000 C:\WINDOWS\system32\MLANG.dll >0x76940000 - 0x76964000 C:\WINDOWS\system32\ntshrui.dll >0x76ad0000 - 0x76ae1000 C:\WINDOWS\system32\ATL.DLL >0x759b0000 - 0x75a60000 C:\WINDOWS\system32\USERENV.dll >0x71a50000 - 0x71a62000 C:\WINDOWS\system32\MPR.dll >0x75eb0000 - 0x75eb7000 C:\WINDOWS\System32\drprov.dll >0x71b60000 - 0x71b6e000 C:\WINDOWS\System32\ntlanman.dll >0x71c20000 - 0x71c35000 C:\WINDOWS\System32\NETUI0.dll >0x71be0000 - 0x71c20000 C:\WINDOWS\System32\NETUI1.dll >0x71bd0000 - 0x71bd7000 C:\WINDOWS\System32\NETRAP.dll >0x71b40000 - 0x71b53000 C:\WINDOWS\System32\SAMLIB.dll >0x75ec0000 - 0x75ec9000 C:\WINDOWS\System32\davclnt.dll >0x73cc0000 - 0x73cd3000 C:\WINDOWS\system32\shgina.dll >0x758b0000 - 0x759a3000 C:\WINDOWS\system32\MSGINA.dll >0x762b0000 - 0x762c0000 C:\WINDOWS\system32\WINSTA.dll >0x73520000 - 0x7355d000 C:\WINDOWS\system32\ODBC32.dll >0x76300000 - 0x76348000 C:\WINDOWS\system32\comdlg32.dll >0x03aa0000 - 0x03ab7000 C:\WINDOWS\system32\odbcint.dll >0x092d0000 - 0x09349000 C:\WINDOWS\system32\Audiodev.dll >0x086c0000 - 0x08904000 C:\WINDOWS\system32\WMVCore.DLL >0x070d0000 - 0x0710b000 C:\WINDOWS\system32\WMASF.DLL >0x67930000 - 0x679d1000 C:\WINDOWS\system32\DBGHELP.DLL >0x76e90000 - 0x76ecc000 C:\WINDOWS\system32\RASAPI32.DLL >0x76e40000 - 0x76e52000 C:\WINDOWS\system32\rasman.dll >0x76e60000 - 0x76e8f000 C:\WINDOWS\system32\TAPI32.dll >0x76e30000 - 0x76e3e000 C:\WINDOWS\system32\rtutils.dll >0x72220000 - 0x72225000 C:\WINDOWS\system32\sensapi.dll >0x03dd0000 - 0x03e52000 C:\WINDOWS\system32\shdoclc.dll >0x04060000 - 0x0406e000 C:\Program Files\Adobe\Acrobat 7.0\ActiveX\AcroIEHelper.dll >0x7c340000 - 0x7c396000 C:\WINDOWS\system32\MSVCR71.dll >0x75de0000 - 0x75e8f000 C:\WINDOWS\system32\SXS.DLL >0x040c0000 - 0x04620000 C:\WINDOWS\system32\xpsp2res.dll >0x71980000 - 0x719bf000 C:\WINDOWS\system32\mswsock.dll >0x607c0000 - 0x60816000 C:\WINDOWS\system32\hnetcfg.dll >0x719c0000 - 0x719c8000 C:\WINDOWS\System32\wshtcpip.dll >0x04b20000 - 0x04b3c000 c:\progra~1\mcafee.com\vso\McVSSkt.dll >0x76ed0000 - 0x76ef7000 C:\WINDOWS\system32\DNSAPI.dll >0x76930000 - 0x76938000 C:\WINDOWS\system32\LINKINFO.dll >0x76f70000 - 0x76f76000 C:\WINDOWS\system32\rasadhlp.dll >0x03d80000 - 0x03d9c000 C:\Program Files\Adobe\Acrobat 7.0\ActiveX\PDFShell.dll >0x7cca0000 - 0x7cf85000 C:\WINDOWS\system32\mshtml.dll >0x74600000 - 0x74627000 C:\WINDOWS\system32\msls31.dll >0x74630000 - 0x7465a000 C:\WINDOWS\system32\msimtf.dll >0x64890000 - 0x648eb000 C:\WINDOWS\IME\imjp8_1\IMJPCIC.DLL >0x75ba0000 - 0x75c0e000 C:\WINDOWS\system32\jscript.dll >0x75390000 - 0x75401000 C:\WINDOWS\system32\mshtmled.dll >0x72c70000 - 0x72c79000 C:\WINDOWS\system32\wdmaud.drv >0x72c60000 - 0x72c68000 C:\WINDOWS\system32\msacm32.drv >0x77b90000 - 0x77ba5000 C:\WINDOWS\system32\MSACM32.dll >0x77b80000 - 0x77b87000 C:\WINDOWS\system32\midimap.dll >0x71c90000 - 0x71cac000 C:\WINDOWS\system32\ACTXPRXY.DLL >0x6bf50000 - 0x6bf85000 C:\WINDOWS\system32\dxtrans.dll >0x6d5d0000 - 0x6d5da000 C:\WINDOWS\system32\ddrawex.dll >0x736b0000 - 0x736f9000 C:\WINDOWS\system32\DDRAW.dll >0x73b10000 - 0x73b16000 C:\WINDOWS\system32\DCIMAN32.dll >0x6bf90000 - 0x6bfea000 C:\WINDOWS\system32\dxtmsft.dll >0x1c000000 - 0x1c006000 C:\WINDOWS\HKNTDLL.dll >0x5ec50000 - 0x5ec89000 C:\WINDOWS\ime\mscandui.dll >0x6d590000 - 0x6d5a1000 C:\Program Files\Java\jre1.5.0_02\bin\npjpi150_02.dll >0x5c9a0000 - 0x5c9b7000 C:\WINDOWS\system32\OLEPRO32.DLL >0x6d400000 - 0x6d417000 C:\Program Files\Java\jre1.5.0_02\bin\jpiexp32.dll >0x76f60000 - 0x76f68000 C:\WINDOWS\System32\winrnr.dll >0x6d450000 - 0x6d468000 C:\Program Files\Java\jre1.5.0_02\bin\jpishare.dll >0x6d640000 - 0x6d7c5000 C:\PROGRA~1\Java\JRE15~1.0_0\bin\client\jvm.dll >0x6d280000 - 0x6d288000 C:\PROGRA~1\Java\JRE15~1.0_0\bin\hpi.dll >0x76ba0000 - 0x76bab000 C:\WINDOWS\system32\PSAPI.DLL >0x6d610000 - 0x6d61c000 C:\PROGRA~1\Java\JRE15~1.0_0\bin\verify.dll >0x6d300000 - 0x6d31d000 C:\PROGRA~1\Java\JRE15~1.0_0\bin\java.dll >0x6d630000 - 0x6d63f000 C:\PROGRA~1\Java\JRE15~1.0_0\bin\zip.dll >0x6d000000 - 0x6d166000 C:\Program Files\Java\jre1.5.0_02\bin\awt.dll >0x72f50000 - 0x72f76000 C:\WINDOWS\system32\WINSPOOL.DRV >0x73890000 - 0x73960000 C:\WINDOWS\system32\D3DIM700.DLL >0x6d240000 - 0x6d27d000 C:\Program Files\Java\jre1.5.0_02\bin\fontmanager.dll >0x6d1f0000 - 0x6d203000 C:\Program Files\Java\jre1.5.0_02\bin\deploy.dll >0x049c0000 - 0x049dd000 C:\Program Files\Java\jre1.5.0_02\bin\RegUtils.dll >0x08910000 - 0x08bd6000 C:\WINDOWS\system32\msi.dll > >VM Arguments: >jvm_args: -Xbootclasspath/a:C:\PROGRA~1\Java\JRE15~1.0_0\lib\deploy.jar;C:\PROGRA~1\Java\JRE15~1.0_0\lib\plugin.jar -Xmx96m -Djavaplugin.maxHeapSize=96m -Xverify:remote -Djavaplugin.version=1.5.0_02 -Djavaplugin.nodotversion=150_02 -Dbrowser=sun.plugin -DtrustProxy=true -Dapplication.home=C:\PROGRA~1\Java\JRE15~1.0_0 -Djava.protocol.handler.pkgs=sun.plugin.net.protocol -Djavaplugin.vm.options=-Djava.class.path=C:\PROGRA~1\Java\JRE15~1.0_0\classes -Xbootclasspath/a:C:\PROGRA~1\Java\JRE15~1.0_0\lib\deploy.jar;C:\PROGRA~1\Java\JRE15~1.0_0\lib\plugin.jar -Xmx96m -Djavaplugin.maxHeapSize=96m -Xverify:remote -Djavaplugin.version=1.5.0_02 -Djavaplugin.nodotversion=150_02 -Dbrowser=sun.plugin -DtrustProxy=true -Dapplication.home=C:\PROGRA~1\Java\JRE15~1.0_0 -Djava.protocol.handler.pkgs=sun.plugin.net.protocol vfprintf >java_command: <unknown> > >Environment Variables: >PATH=C:\PROGRA~1\Java\JRE15~1.0_0\bin;C:\Program Files\Internet Explorer;;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;. >USERNAME=管理人室 >OS=Windows_NT >PROCESSOR_IDENTIFIER=x86 Family 15 Model 4 Stepping 1, GenuineIntel > > >--------------- S Y S T E M --------------- > >OS: Windows XP Build 2600 Service Pack 2 > >CPU:total 1 family 15, cmov, cx8, fxsr, mmx, sse, sse2, ht > >Memory: 4k page, physical 244464k(55328k free), swap 598668k(323724k free) > >vm_info: Java HotSpot(TM) Client VM (1.5.0_02-b09) for windows-x86, built on Mar 4 2005 01:53:53 by "java_re" with MS VC++ 6.0 > >
[この投稿を含むスレッドを表示] [この投稿を削除]
[858] 管理者により削除されました
2007/02/20 02:20:08

広告なので削除
[この投稿を含むスレッドを表示]
[857] 管理者により削除されました
2007/02/25 19:28:21

広告なので削除しました。
[この投稿を含むスレッドを表示]
[856] Re:BF-BASIC'n
投稿者:(ぱ)
2007/02/20 02:13:25

>えーっと、GPLかNYSLを適用しておいてもらえますでしょうか? そうでした。ライセンスの規定を忘れていました。ご指摘ありがとうございます。 NYSLにさせていただきました。
[この投稿を含むスレッドを表示] [この投稿を削除]
[855] BF-BASIC'n
投稿者:yuya
2007/02/20 02:13:25

こんな言語を探してました。 えーっと、GPLかNYSLを適用しておいてもらえますでしょうか?
[この投稿を含むスレッドを表示] [この投稿を削除]
[854] Re:インデント
投稿者:(ぱ)
2007/02/20 02:13:25

>なるほど。めったにプリントアウトしないため気づきませんでした。 私も今はプリントアウトはしませんが、25行のテキスト端末でvi使ってた時代は そういうわけにもいきませんでした。 >あ、ひょっとして勘違いだったかもしれません。申し訳ありません。 うーん、やはりそちらに書き込んだことはないようです。 >40代のオヤジ技術者です。これを機にお見知りおきを。 了解しました。こちらこそよろしくお願いいたします。
[この投稿を含むスレッドを表示] [この投稿を削除]
[853] Re:インデント
投稿者:酔漢
2007/02/20 02:13:25

>と書くわけです。でも、当時ソースをプリントアウトしたとき、紙の切れ目で「}」が来ると、 >そこでif文が終わりなのか判定しにくいと思いやめました。 なるほど。めったにプリントアウトしないため気づきませんでした。 >す、すみません、「酔漢」さんがどなたかわかりませんです。 >私が定期的に書き込んでいる掲示板等は、そんなにないと思うのですが… あ、ひょっとして勘違いだったかもしれません。申し訳ありません。 40代のオヤジ技術者です。これを機にお見知りおきを。
[この投稿を含むスレッドを表示] [この投稿を削除]
[852] Re:インデント
投稿者:(ぱ)
2007/02/20 02:13:25

はじめまして。 >ちなみに私は >if() { > ... >} >else { > ... >} >と、そうとう変則的です。 でも、この書き方はたまに見かけると思います。 私も当初、else ifごとにコメントを入れたくて、そういう書き方にしていた頃があります。 if () { ... } /* ほにゃららの場合 */ else if (ほにゃらら) { ... } と書くわけです。でも、当時ソースをプリントアウトしたとき、紙の切れ目で「}」が来ると、 そこでif文が終わりなのか判定しにくいと思いやめました。 >ご挨拶が遅れました。はじめまして。私のところにいらっしゃるときと雰囲気が違うので驚きました。 す、すみません、「酔漢」さんがどなたかわかりませんです。 私が定期的に書き込んでいる掲示板等は、そんなにないと思うのですが…
[この投稿を含むスレッドを表示] [この投稿を削除]
[851] インデント
投稿者:酔漢
2007/02/20 02:13:25

begin/endか{/}かというページを読んで、昔読んだインデント論争を思い出しました。こちらもbit誌の連載で、その後単行本に収録されたはずですが、実家の両親に捨てられました。 SIGPLAN NOTICEの読者投稿で行われた「インデントはいかにあるべきや」という論争で、今で言えば、C言語のifに続く{はifの行末か、ifの次の行で同じ深さか、はたまた一段落とすかという話です。最後は編集者が「もういい」と打ち切ったそうです。 ちなみに私は if() { ... } else { ... } と、そうとう変則的です。最近は誰も「宙ぶらりんのelse」の話をしないので寂しいです。 ご挨拶が遅れました。はじめまして。私のところにいらっしゃるときと雰囲気が違うので驚きました。
[この投稿を含むスレッドを表示] [この投稿を削除]
[850] Re:「疑り深いあなたのためのオブジェクト指向再入門」読みました
投稿者:(ぱ)
2007/02/20 02:13:25

このところどたばたしてまして返事が遅くなりましてすみません。 >で、思ったんですが、よくよく考えてみればC言語には昔からオブジェクト指向の標準関数がありますね。FILE * を介して行なうファイル入出力です そう思います。以下のページにそんなことを書きました。 http://kmaebashi.com/programmer/c_yota/inherit.html >その他、X Window System の Xlib やそのツールキットもオブジェクト指向です。 それも上記のページに書いています。 「疑り深い~」に書き足すかどうかはちょっと保留にさせてください。 # ていうか今は無理です。
[この投稿を含むスレッドを表示] [この投稿を削除]
[849] 「疑り深いあなたのためのオブジェクト指向再入門」読みました
投稿者:NOBORU
2007/02/20 02:13:25

で、思ったんですが、よくよく考えてみればC言語には昔からオブジェクト指向の標準関数がありますね。FILE * を介して行なうファイル入出力です (これだけでもう分かると思いますが、fopen() が新しいインスタンスを作る new のようなもの。fclose() が C++ の delete のようなもの。fprintf()やfgets()などの入出力関数は全て最初に作った FILE 型領域へのポインタを介して行なって、違う FILE * だと違うファイルが対象になります)。 解説にその辺のことも付け加えるといいんじゃないでしょうか。これならよほどの初心者か特殊な環境のプログラマでない限りは使ったことあるでしょうから理解され易いと思います。 p.s. その他、X Window System の Xlib やそのツールキットもオブジェクト指向です。
[この投稿を含むスレッドを表示] [この投稿を削除]
[848] ハッシュは何を使うか
投稿者:マスタング
2007/02/20 02:13:25

最近STLを勉強していて、C++の標準にはハッシュはないので 何で実現するかに迷っています。 もちろんアプリや目的が何かが重要ですが、実行速度優先で 考えていて、mapは遅いので使えないです。 ハッシュ関数はint値をテーブルサイズで割った余りを 返すという単純なものを考えています。 候補としては、以下のものを考えているのですが、 もっとうまい方法や常套手段はあるのでしょうか? 1) VC++のhash_map 2) SGIのhash_map 3) STLportのhash_map 4) templateで自作する .NET2003のVC++を使っているので1)か4)で考えているのですが、 良いサンプルがなかなかなくて、標準に入ってないだけで 結構苦労してます。慣れの問題かもしれないですが。 MSDNにも簡単なサンプルしかないし。
[この投稿を含むスレッドを表示] [この投稿を削除]
[847] Re:マスタングさんへ
投稿者:kit
2007/02/20 02:13:25

> 私もそう思いますが、「センス・オブ~」でそう書いたところ査読して > くださった方からの反論があり、多少表現を変更した、という経緯も (^^; (^^; Cで単方向リストを書く場合、私も先頭のダミー要素は使いません。 リンクポインタへのポインタを使えば、不要になるからです。 でも、Lisp 文化圏あたりでは、ダミー要素も割と当たり前に使うんじゃ ないでしょうか? というか、C と C++ 以外の(リンクポインタへの ポインタを使えない) 言語では、わりと使うことが多いような。 あと私は、Cでも双方向リストを書く場合には、ほとんどの場合、環状にして ダミー要素を使います。結構そういう人は多いと思うんですけど、そうでも ないですかねえ。 試しに Java の標準ライブラリ jdk-1_5_0-src-scsl/j2se/src/share/classes/java/util/LinkedList.java を確認してみましたが、やはりダミー要素を使っているようですよ。
[この投稿を含むスレッドを表示] [この投稿を削除]
[846] Re:マスタングさんへ
投稿者:マスタング
2007/02/20 02:13:25

>listのsortとアルゴリズムのsortやqsortなら後者の方が速いような気がしますが(気がするだけですが)、 >その話ではないのです。紛らわしくてすみません。 >連結リストを自分で実装した場合の話です。 > >↓の最後の方法のことを言いたかったのです。 >http://www.kouno.jp/home/c_faq/c13.html#10 了解しました。 ありがとうございました。
[この投稿を含むスレッドを表示] [この投稿を削除]
[845] Re:マスタングさんへ
投稿者:(ぱ)
2007/02/20 02:13:25

>先頭に置くなら番兵とは呼ばずにダミー要素と呼ぶべき。  私自身そう呼びますが(センス・オブ~ではダミーノードと呼んでいた)、774RRさん自身が「それとも最初に作ってる sta は番兵?」と書いておられるので、先頭のダミーノードを番兵と呼ぶ文化圏というのもありなのかなあ、と私は解釈しましたが。 >1方向リンクリストでも使わないほうが自然でしょう。  私もそう思いますが、「センス・オブ~」でそう書いたところ査読してくださった方からの反論があり、多少表現を変更した、という経緯も (^^;
[この投稿を含むスレッドを表示] [この投稿を削除]