文字配列のアドレスを構造体ポインタに渡しても大丈夫ですか?
typedef struct {
int ID;
word32 Myports;
stripports gd[256] ;
}Table;
typedef struct {
oldxmd used;
newip ip;
newxmd new;
}stripports;
char buffer1[256];
Table *tableptr = buffer1 ;
tableptr ->ID = 15 ;
tableptr ->Myports= somenumber ;
tableptr ->gd[0].used = somenumber ;
難しいのは、 tableptrが配列の開始アドレスを受け入れる理由を関連付けることができないことです。私の最善の策は、上記のコードが正しくないか、安全ではないということです。
キャストは後で採用されましたが、なぜ配列を受け入れるのですか?
Table* tableptr = (Table*)buffer1;
Table *tableptr = buffer1 ;
Table* tableptr = (Table*)buffer1;
その後の多くのテストで置き換えられました。
キャストせずに、struct
ポインタは新しく作成されたポインタのアドレス以外の値を取ることができますstruct
か?
私はリポジトリに多くの作者によって書かれた一連のテストを持っています、そしてそれは本当に紛らわしいです。