PB 電子会議室

コメント

発言No. 更新日 題名(クリックすると発言内容と関連するコメントが表示されます)
13112 00/09/06 02:18:51 RE(8):PBでの外部関数によるポインタの使用 By ryochan
13111 00/09/05 18:34:36 PBでの外部関数によるポインタの使用(総括のコメント) By M.M
13107 00/09/05 17:45:23 RE(6):PBでの外部関数によるポインタの使用(7):API引数 By ryochan
13106 00/09/05 17:34:59 RE(5):PBでの外部関数によるポインタの使用(6):ref宣言 By ryochan
13105 00/09/05 17:33:57 RE(4):PBでの外部関数によるポインタの使用(5):string By ryochan
13104 00/09/05 17:33:11 RE(3):PBでの外部関数によるポインタの使用(4):string By ryochan
13103 00/09/05 17:31:00 RE(2):PBでの外部関数によるポインタの使用(3):構造体2 By ryochan
13102 00/09/05 17:30:14 RE(1):PBでの外部関数によるポインタの使用(2):構造体 By ryochan
13101 00/09/05 17:28:56 PBでの外部関数によるポインタの使用(1):ポインタの説明 By ryochan

カテゴリ:スクリプトの記述
日付:2000年09月06日 02:18 発信者:ryochan
題名:RE(8):PBでの外部関数によるポインタの使用

M.Mさん、おはようございます。

>ところでryochanさんは、Powersoft Tech Note OnlineのNo.4474
>「外部関数の呼び出しについて」は読まれたでしょうか。
>(http://www.ashisuto.co.jp/kka/dis/pspweb/support/techdocs/pdf/4474.pdf)
文字列の参照渡しについて、
「REFERENCEで文字列を外部関数に引き渡す場合、
 PowerBuilderは実際の文字列を関数に渡しますが、ポインタを
 渡すわけではありません。すべてのメモリの管理は
 PowerBuilderによって行われます。そのため、文字列に対する
 ポインタをPowerBuilderに引き渡すことはできません。」
と書いてあります。
ということは、Cでは文字列定数をそのまま
渡しても結果的にポインタとして渡るので、
そのことを言っているのでしょうか?
例:func_hoge(char *param)
  func_hoge(\"ABC\")
いずれにしろ、関数ではポインタとして受け取らないと
始まりません。
今までの見解ではPB側でポインタ変換
すると言うことでしたが、PBでは文字列定数として
そのままDLL関数に渡し、DLL側でポインタに変換される
ということになりますね。
違っていたら宜しくお願いします。

付加情報:

PowerBuilder Version (記載なし)

Client SoftWare

OS (記載なし)
DBMS (記載なし)
Browser (記載なし)

Server SoftWare

OS (記載なし)
DBMS (記載なし)
WebServer (記載なし)

PowerSpaceの運営は、パワーフューチャー株式会社が行っております。
Copyright © 2013 Power Future Co., Ltd.