我有一個C程序中,我有兩個結構如何將結構的內容複製到另一個結構用C
struct one{
int a;
int b;
char *s;
int c;
};
struct two{
int a;
int e;
char *s;
int d;
};
可以編寫一個函數,用相同的拷貝變量的值類型和名稱從struct one
到struct two
? 例如,在這種情況下,函數應該這樣做
two.a = one.a;
two.s = one.s;
這僅僅是不正當的。 –
如果** pone *指向一個,** ptwo *指向兩個然後* memcpy(one,two,sizeof(one)); *對它應該。 –
所以你複製一個指針,但不是它指向的內容。假設你在第一個'struct'中釋放指針。在劫難逃。 –