PB 電子会議室
発言No. | 更新日 | 題名(クリックすると発言内容と関連するコメントが表示されます) |
---|---|---|
16180 | 01/09/04 10:02:12 | RE(13):PB7.0: 外部関数の引数に構造体メンバを持つ構造体の使用 By ryochan |
16178 | 01/09/03 20:00:48 | RE(12):PB7.0: 外部関数の引数に構造体メンバを持つ構造体の使用 By ykano |
16176 | 01/09/03 19:36:38 | RE(11):PB7.0: 外部関数の引数に構造体メンバを持つ構造体の使用 By ryochan |
16173 | 01/09/03 17:34:45 | RE(10):PB7.0: 外部関数の引数に構造体メンバを持つ構造体の使用 By ykano |
16172 | 01/09/03 17:20:18 | RE(9):PB7.0: 外部関数の引数に構造体メンバを持つ構造体の使用 By ykano |
16171 | 01/09/03 17:17:50 | RE(8):PB7.0: 外部関数の引数に構造体メンバを持つ構造体の使用 By まつだ |
16169 | 01/09/03 15:03:59 | RE(7):PB7.0: 外部関数の引数に構造体メンバを持つ構造体の使用 By ryochan |
16168 | 01/09/03 14:13:46 | RE(6):PB7.0: 外部関数の引数に構造体メンバを持つ構造体の使用 By ykano |
16167 | 01/09/03 13:24:20 | RE(5):PB7.0: 外部関数の引数に構造体メンバを持つ構造体の使用 By M.M |
16166 | 01/09/03 12:37:56 | RE(4):PB7.0: 外部関数の引数に構造体メンバを持つ構造体の使用 By ykano |
16165 | 01/09/03 12:20:24 | RE(3):PB7.0: 外部関数の引数に構造体メンバを持つ構造体の使用 By ykano |
16163 | 01/09/03 11:16:37 | RE(2):PB7.0: 外部関数の引数に構造体メンバを持つ構造体の使用 By M.M |
16162 | 01/09/03 09:54:10 | RE(1):PB7.0: 外部関数の引数に構造体メンバを持つ構造体の使用 By ryochan |
16161 | 01/09/02 15:45:14 | PB7.0: 外部関数の引数に構造体メンバを持つ構造体の使用 By ykano |
カテゴリ:スクリプトの記述
日付:2001年09月03日 19:36 発信者:ryochan
題名:RE(11):PB7.0: 外部関数の引数に構造体メンバを持つ構造体の使用
ykanoさん、まつださんこんばんは。
私も勉強不足で、特にykanoさんには
良くレスを見ていなくて、失礼なことを
書いてしまいました。すみません。
まだ私も技術不足で、アライメントについての
お話で理解できない箇所がありますので、
すみませんがお願いします。
>>Cだと4バイト境界に整列されますが、PBはされないようです。
と
>おっしゃるとおりでした。
>PBの構造体の定義を4バイト単位になるように、ダミーの項目を入れてみると、うまくいきました。
についてですが、
となると、ykanoさんのところでは
C側でアライメントを既に採用しているということに
なりますよね。
Cではアライメントに関して#pragma packを指定しなければ
アライメントされないのではなかったと思うのですが、
例えば:
#pragma pack(4)
typedef struct {
char a ;
int x ;
} DEF_TEST
#pragma pack()
↓と同じサイズになる
typedef struct {
char a ;
char dummy1 ;
char dummy2 ;
char dummy3 ;
int x ;
} DEF_TEST
しかし、
>Cの方で、#pragma packというのは使えないものでしょうかね。(今、初めて知りました)
>ちょっと、調べてみようと思います。
>ただ、他に使用しているライブラリがあるのですが、そのライブラリの制約で、
>「構造体メンバのアラインメント」を4バイトにするようにと指定されているので、
>どうしたものかと思っています。
ということなので、まだその構造体定義ではアライメントを採用していないということ
ですよね。何か矛盾している様に見えるのは私だけでしょうか。
もし、誤解している箇所があれば指摘してください。
(アライメントを採っていなければ、PBと同じ仕様になるので、取得可能になりませんか?
実際、私の所では全て表示できてるのですが。レスをはしょりすぎました。)
付加情報:
PowerBuilder Version (記載なし)
Client SoftWare
OS Windows95
DBMS (記載なし)
Browser (記載なし)
Server SoftWare
OS (記載なし)
DBMS (記載なし)
WebServer (記載なし)
Copyright © 2013 Power Future Co., Ltd.