C言語で構造体のデータを別の構造体へコピーする方法を教えてください。
コピー先の構造体はコピー元となる構造体に変数が追加されたものになります。
typedef struct{ char sStr0[4]; /* sStr0[9]ではなくStr0[4]の間違いでした*/ char sStr1[4]; char sStr2[4]; }stTest1 ; typedef struct{ char sStr0[4]; char sStr1[4]; char sStr2[4]; int iVal1 ; int iVal2 ; }stTest2 ; //ダミーデータ void main(){ stTest1 kFrom[3] = { {"001","AAA","111"}, {"002","BBB","222"}, {"003","CCC","333"} }; stTest2 kCopy[3] ; for( iLp = 0; iLp < 3; iLp++ ){ /* sStr0, sStr1, sStr2 はkFromのデータをそのままコピーしたい */ kCopy[iLp].iVal1 = iLp+1 ; kCopy[iLp].iVal2 = iLp+2 ; } return ; }
結果として、kCopyに
{"001","AAA","111", 0, 1} {"002","BBB","222", 1, 2} {"003","CCC","333", 2, 3}
としたいです。
sStr0,sStr1,sStr2を項目一つずつする以外に構造体ごとコピーできる方法があれば教えてください。

回答6件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/08/29 08:20
2018/08/30 00:53