0
構造体を別の構造体に渡したいのですが、 "name"という文字列が現在のコンテキストに存在しないため、含まれていません。他の構造体でそれを知らせる方法構造体を別の構造体に渡す方法
public struct iec_unit_id
{
internal byte iec_unit_id_data1;
internal byte iec_unit_id_data2;
public byte type_id; //Type_identification
public byte num
{
get { return (byte)(iec_unit_id_data1 & 0x7f); }
set { iec_unit_id_data1 = (byte)((iec_unit_id_data1 & ~0x7f) | (value & 0x7f)); }
} //Number of Objects:7;
public byte sq
{
get
{ return (byte)((iec_unit_id_data1 >> 7) & 0x01); }
set
{ iec_unit_id_data1 = (byte)((iec_unit_id_data1 & ~(0x01 << 7)) | (value & 0x01) << 7); }
} // sequenced/not sequenced address:1;
public byte cause
{
get { return (byte)(iec_unit_id_data2 & 0x3f); }
set { iec_unit_id_data2 = (byte)((iec_unit_id_data2 & ~0x3f) | (value & 0x3f)); }
} //cause of transmission:6;
public byte pn
{
get { return (byte)((iec_unit_id_data2 >> 6) & 0x01); }
set { iec_unit_id_data2 = (byte)((iec_unit_id_data2 & ~(0x01 << 6)) | (value & 0x01) << 6); }
} // pn:1; positive=1 negative=0
public byte t
{
get { return (byte)((iec_unit_id_data2 >> 7) & 0x01); }
set { iec_unit_id_data2 = (byte)((iec_unit_id_data2 & ~(0x01 << 7)) | (value & 0x01) << 7); }
} // test : 1;
public byte oa; //Originator Adress
public ushort ca; // ASDU Common Adress
}
public struct iec_apdu
{
byte start;
byte length;
byte NS;
byte NR;
struct iec_unit_id asdu ;
}
struct変数の名前はasduです。
のtry変更 "構造体iec_unit_id ASDU;" 〜 "iec_unit_id asdu;" – Henningsson
あなたが何を求めているかは全く分かりません。あなたが何をしようとしているのか分かりません。あなたは構造体に何を渡したいのですか? – ckruczek
変更可能な構造体に気を付けると、予期しない結果が生じる可能性があります。 http://stackoverflow.com/questions/441309/why-are-mutable-structs-evilを参照してください。 –