0
の値は構造体構造体のポインタのオフセット、そしてどのように組み立て
struct info{
struct stat information;
char * filename
}
がありますと仮定し得るために、そして、私は今fOffsetが何であるか、ファイル名ポインタのオフセットを
size_t fOffset = offsetof(struct info, filename);
を設定?
SPARCアセンブリでは、実際の文字列をfilenameに入れたいと思っています。これは私が今までに書いたものです。パラメータは情報構造体のポインタです
set fOffset, %l0
ld [%l0], %l1
add %i0, %l1, %l2
ld [%l2], %l2
ldub [%l2], %o0
%o0は文字列を格納すると考えましたが、明らかにそうではありません。誰か助けて?
オフセット'struct stat'の定義と使用するコンパイラの実装や設定に依存します。 – MikeCAT
私はこの質問が構造体statに関係しているとは思わない、構造体情報内のcharポインタメンバーに関するものです。 – faker
'fOffset'の値はおそらく' sizeof(struct stat) 'になります。アセンブリでそのサイズを判断することはできません。正しいサイズを知っているか、アセンブリではなくCを使用する必要があります。 –