呼び出す関数を切り替えたい

[戻る]
とまと 2002/05/14(火) 13:04:59
こんにちは。早速質問させていただきます。

数百のファイルがあり、その中にいくつもの関数が記述されています。
そしてそのファイルの中から「fucn_002」という関数をすべて
「zi_fucn_002」に切り替えることが目的です。

コンパイルスイッチでファイルの中を検索して
#ifdef A
    fucn_002(a, b);
#else
    Zi_func_002(a, b);
#endif
としていては、かなりの作業ですし、抜けがあるかもしれません。

どのような方法でもいいのですので、何かいい方法がありましたら
ご教授お願いいたします。

取りすがり 2002/05/14(火) 13:25:57
ただの置換とはちがうのですか?
すいません、理解力ぶそくですね(^^;

取りすがり 2002/05/14(火) 13:28:23
マルチはやめたほうがよろしいと思いますが。

不良PG [E-Mail] 2002/05/14(火) 13:29:17
最近、マルチポスト多すぎです(;;)

回答したのに・・

http://hpcgi1.nifty.com/MADIA/Vcbbs/wwwlng.cgi?print+200205/02050010.txt

とまと 2002/05/14(火) 14:10:39
すいません、2箇所で質問しました。
そして同じ方が回答してくださってたんですね。
ありがとうございました。

#define fucn_002(a, b) zi_fucn_002(a, b)
ですと、関数本体を宣言していないファイルで定義した場合
関数本体まで変わってしまうようです。

何か本体と呼び出しているものと区別できる方法はありませんでしょうか?
呼び出しの場合、if文の中に入っている場合や#defineされている場合もあります。

以上、よろしくお願いします。

PATIO 2002/05/16(木) 10:10:47
マルチポストの方の話で申し訳ないのですが、
マルチポストは印象が悪くなるだけでいいことないです。
印象が悪くなると回答が付く可能性が低くなります。
当然、このような説教が増えて回答は得られず、不毛な状態になります。
既に質問をしていて解答がつかないから他の掲示板に投げなおす場合は、
元の掲示板がわにレスがつかないのでここでの質問は取りやめる旨を
きちんと書き込みましょう。少なくともそっちの終結宣言はすべきです。
また、掲示板は気長に返事を待つべき場所であって緊急を要する場合は、
もっと確実な方法を取らないと駄目です。お金がかかろうともメーカーの
サポートを使用するのが、一番レスポンスが確実です。向こうも商売ですから。

#define fucn_002(a, b) zi_fucn_002(a, b)の件は、
これ自体を記述しているのがヘッダファイルなのであれば、
#ifndefで囲んで、関数本体のファイルだけそのヘッダーファイルの
インクルード前に囲うのに使用したものを#defineすればいいのでは?

この辺は、割とポピュラーなテクニックだと思うのですけれど。

com-a 2002/05/16(木) 10:35:56
不良PGさん、初めまして。

マルチポストは問題ですが、そのリンクを貼って頂くことにより、私の巡回先が増えまし
た。(^ ^)
ありがとうございました。

#よろしければ、トップページを教えて頂ければ幸いです。(BBSのみのサイトでしょう
か?)
#関係のない発言で申し訳ありません。>ALL

Bun 2002/05/16(木) 10:45:08
>トップページを教えて頂ければ幸いです。

右下にリンクがはってありますよ。

不良PG [E-Mail] 2002/05/16(木) 11:41:01
>マルチポストの方の話で申し訳ないのですが、
>マルチポストは印象が悪くなるだけでいいことないです。
>印象が悪くなると回答が付く可能性が低くなります。
>当然、このような説教が増えて回答は得られず、不毛な状態になります。
>既に質問をしていて解答がつかないから他の掲示板に投げなおす場合は、
>元の掲示板がわにレスがつかないのでここでの質問は取りやめる旨を
>きちんと書き込みましょう。少なくともそっちの終結宣言はすべきです。
これに、加えて・・
マルチポスト自体良くないことですが、やってしまった場合には、
すべての掲示板に経過と結果を書き込む事が、最低限質問者として必要でしょう。

>すいません、2箇所で質問しました。
>そして同じ方が回答してくださってたんですね。
>ありがとうございました。
そんなことより2箇所で質問した影響を考えて欲しいものです・・

恐らくもう現れないでしょうから・・・
質問者ではありませんが、
http://hpcgi1.nifty.com/MADIA/Vcbbs/wwwlng.cgi?print+200205/02050010.txt
こちらで解決しているので・・
解決にしておきます

コピペしときます・・
>不良PG [E-Mail] 2002/05/14(火) 14:51:05
>ちょっと抜けてました・・(汗
>
>関数の定義自体(宣言も)をコンパイルスイッチで切り替えればよいでしょう
>#ifdef A
>    fucn_002(a, b) { }
>#else
>    Zi_func_002(a, b) { }
>#endif
>
>とまと 2002/05/14(火) 18:41:42
>[[解決]]
>ありがとうございました。

Bun 2002/05/16(木) 11:44:44
[[解決]]
> 恐らくもう現れないでしょうから・・・

> こちらで解決しているので・・
> 解決にしておきます

ぢゃ、わしが、チェック。

 by 解ー決ズバット(何と読むかは秘密)

不良PG [E-Mail] 2002/05/16(木) 11:45:09
[[解決]]
解決押そうとしてわすれてました(;;)

Bun 2002/05/16(木) 11:48:10
> 解決押そうとしてわすれてました(;;)

よー、かぶりまんな。(笑)

ゴミです。m(__)m

com-a 2002/05/16(木) 12:29:09
>>トップページを教えて頂ければ幸いです。
>
>右下にリンクがはってありますよ。

これってリンクでしたか。(^ ^;) 気がつきませんでした。


>ぢゃ、わしが、チェック。
>
> by 解ー決ズバット(何と読むかは秘密)

ズバット気持ちよさそう(笑) やってみたい。(^ ^;)


ゴミですね。申し訳ありません。m(_ _)m

とまと 2002/05/22(水) 17:26:58
[[解決]]
こんにちは。

>そんなことより2箇所で質問した影響を考えて欲しいものです・・

マルチポストでご迷惑をおかけしてすいませんでした。
いけないことだとは考えてもいなかったものですから。。。
以後、気をつけます。

古いスレッドには追加発言できません。