- PR -

C#で 構造体 の中に 構造体 を定義…。

1
投稿者投稿内容
こいずみ
会議室デビュー日: 2006/08/16
投稿数: 2
投稿日時: 2006-08-16 17:50
C#言語で関数に渡す引数の定義方法で奮闘しています。
(C言語でかかれたPGをC#言語に書き換えています)
お知恵をお貸ししていただきたく書き込ませていただきました。
よろしくお願いします。

最初に、関数に渡す引数として構造体を定義しました。
その引数である構造体のメンバーに構造体を定義しようと
奮闘しています。

エラー内容は下記のとおりですが、期待しているものとは
ちょっと違うと思ってます。


▼▼▼ 元のC言語 start ▼▼▼

struct s_ymd {
unsigned short int year;
unsigned char mounth;
unsigned char day;
};

struct s_data {
struct s_ymd shikko_date;
struct s_ymd haishi_date;
};
▲▲▲ 元のC言語 end ▲▲▲



▼▼▼ 作成中のC#言語 start ▼▼▼

・下記は、関数に渡す構造体(その1)です

[StructLayout(LayoutKind.Sequential)]
struct s_ymd {
public uint year;
public byte mounth;
public byte day;
};

・下記は、上記で定義した構造体(その1)をメンバーに持っている構造体(その2)

[StructLayout(LayoutKind.Sequential)]
unsafe struct s_data
{

〜省略〜

public struct s_ymd shikko_date;

〜省略〜

};

▲▲▲ 作成中のC#言語 end ▲▲▲


説明不足の点もあるとは思いますが どうぞ宜しくお願いします。

[ メッセージ編集済み 編集者: こいずみ 編集日時 2006-08-16 17:53 ]

[ メッセージ編集済み 編集者: こいずみ 編集日時 2006-08-16 18:02 ]
こいずみ
会議室デビュー日: 2006/08/16
投稿数: 2
投稿日時: 2006-08-16 18:12
自己解決しました。お騒がせして申し訳ございません。

下記の通りソース修正すると通りました。

public struct s_ymd shikko_date;

       ↓

public s_ymd shikko_date;

※「public」の後の「struct 」を削除しると
上手くいきました。


以上、ご協力ありがとうございました。
1

スキルアップ/キャリアアップ(JOB@IT)