◀一般トップへ
  • 4894 C/C++ アウトライン解析
    • 4896 Re:C/C++ アウトライン解析
    • 4899 Re:C/C++ アウトライン解析
      • 4900 Re2:C/C++ アウトライン解析
        • 4901 Re3:C/C++ アウトライン解析
        • 4902 Re3:C/C++ アウトライン解析
          • 4904 Re4:C/C++ アウトライン解析
        • 4903 Re3:C/C++ アウトライン解析
          • 4940 Re4:C/C++ アウトライン解析
            • 4946 Re5:C/C++ アウトライン解析
  • [4894] C/C++ アウトライン解析 じゅうじ 2005年12月01日 14:26

    アウトライン解析では、初投稿です。
    コメント終わりの前に¥が有ると、それ以降の関数が表示されません。

    main(){}
    sub(){/* \*/}
    sub2(){}

    Ver. 1.5.8.0
    よろしくお願いします。
    • [4896] Re:C/C++ アウトライン解析 すす 2005年12月02日 14:49

      ▼ じゅうじさん
      main(){}
      sub(){/* \*/}
      sub2(){}
      /* */
      sub3(){}

      のようになってるとsub3はでてくるので
      アウトライン解析のときだけブロックコメントの終了判定がおかしいのかもしれません。

      ver.1.5.8.1でも同じ現象を確認しました
    • [4899] Re:C/C++ アウトライン解析 無人駅 2005年12月04日 05:11

      ▼ じゅうじさん
      私が見つけたものと多分、同じ原因だと思いますが、漢字も2バイト目が0x5c(='\')であれば、同様の現象がでます。
      しかし、'能'(=0x945c)の直後にスペースを入れると、発生しなくなります。

      main(){}
      sub(){
      //機能
      }
      sub2(){}

      Ver. 1.5.7.1
      よろしくお願いします。
      • [4900] Re2:C/C++ アウトライン解析 じゅうじ 2005年12月04日 16:47

        ▼ 無人駅さん
        >私が見つけたものと多分、同じ原因だと思いますが、

        main(){}
        sub(){/* \
        */}
        sub2(){}

        C で試してみた所では、良いようです。

        >>dev:4199 すす
        ところで、ソースのこれらの行は、Win 2000 環境なら、コメントにしても大丈夫ですか。
        #define WANT_GETLONGPATHNAME_WRAPPER
        #include <NewApis.h>

        VC++ 6.0
        • [4901] Re3:C/C++ アウトライン解析 too 2005年12月05日 09:46

          > ところで、ソースのこれらの行は、Win 2000 環境なら、コメントにしても大丈夫ですか。
          > #define WANT_GETLONGPATHNAME_WRAPPER
          > #include <NewApis.h>

          >>dev:4043
          そのままにしておいた方がよいのでわ?
          私はソースを見てないですし、詳しいことはわかりませんけどね;
        • [4902] Re3:C/C++ アウトライン解析 すす 2005年12月05日 12:06

          ▼ じゅうじさん
          > ▼ 無人駅さん
          > >>dev:4199 すす
          > ところで、ソースのこれらの行は、Win 2000 環境なら、コメントにしても大丈夫ですか。
          > #define WANT_GETLONGPATHNAME_WRAPPER
          > #include <NewApis.h>
          わたしは本当に一部にしかソースを追っていないため、なんともいえません。
          ビルドできないとか、であれば最新のPlathomeSDKをインストールして環境を設定すればいいので
          試してみてください。
          • [4904] Re4:C/C++ アウトライン解析 ryoji 2005年12月05日 23:46

            ▼ すすさん
            > ビルドできないとか、であれば最新のPlathomeSDKをインストールして環境を設定すればいいので
            > 試してみてください。

            ↓最新版PSDKはVC++6.0に非対応という罠。
            http://forums.belution.com/ja/vc/000/316/47s.shtml
            自分はVC++6.0には最終対応版のPSDKでNewAPIs.hのバグ部分を修正して使用してます。
            #VC++6.0最終対応版PSDKと最新版PSDKのNewAPIs.hの差分は実際のところ1行だけ
        • [4903] Re3:C/C++ アウトライン解析 じゅうじ 2005年12月05日 14:08

          ▼ tooさん
          ▼ すすさん
          有難う御座います。

          Platform SDK の64bit の方をインストールしようとしていた様で、32bit なら上手く行きそうです。

          http://download.microsoft.com/download/a/5/f/a5f0d781-e201-4ab6-8c6a-9bb4efed1e1a/PSDK-x86.exe
          • [4940] Re4:C/C++ アウトライン解析 ガリバー 2005年12月31日 04:57

            ▼ じゅうじさん
            > ▼ tooさん
            > ▼ すすさん
            > 有難う御座います。
            >
            > Platform SDK の64bit の方をインストールしようとしていた様で、32bit なら上手く行きそうです。
            >
            > http://download.microsoft.com/download/a/5/f/a5f0d781-e201-4ab6-8c6a-9bb4efed1e1a/PSDK-x86.exe

            32bitでうまくいったでしょうか?
            うまくいくなら私も同じようにしようかとおもっておりますが、
            NewApis.h
            のファイルコメントに

            Win95/NTの 4.0 sp3 "未満"のOSを使用している環境では、
            実装されていない…ということがかかれてあるようです。

            ですので、
            4.0 sp3 "以上"のOSであれば、このNewApis.hを使う必要がない
            ということだと思われます。

            しゅうじさんは、
            etc_uty.c
            でのコンパイル・リンクエラーでひっかかっているのでしょうか?
            私は、
            etc_uty.h
            の、#define WANT_GETLONGPATHNAME_WRAPPER
            をコメントアウトすることでリンクまでできました。

            ちなみに、私の環境はWinXPです。

            以上
            • [4946] Re5:C/C++ アウトライン解析 じゅうじ 2006年01月05日 16:54

              ▼ ガリバーさん
              > ちなみに、私の環境はWinXPです。

              今解る範囲でご返事申し上げます。

              >>dev:4043 げんたさん
               Windows NT4.0/Windows 95 で SAKURA.EXE を使用するのでなければ、NewAPIs.h をインクルードしてエミュレーション関数を呼び出す必要無いと、過去ログに有りました。再掲です、すみません。

               上記リンクの最新 PlatformSDK からコピーした NewAPIs.h であれば、VC++ 6.0 でコンパイルエラーは出なったと思います。▼ すすさん 有難うございます。

              MicrosoftR Windows Server 2003 SP1 Platform SDK - April 2005 Edition
               コンパイル済みのライブラリー(.lib)が対応していないだけで、NewAPIs.h をインクルードするだけならば、VC++ 6.0 でも問題無いと、判断しています。▼ ryojiさん 有難うございます。