char* フィールド\その他の構造体フィールドを含む構造体をコピーする方法を理解するのにまだ問題があります。
typedef struct node{
int id;
struct node* parent
char * nodeName;
struct node* nodes[100];
}NODE,*pNODE;
私はこの関数を使用したいpNODE copyNode(pNODE oldNode)
:
pNODE newNode = (pNODE)calloc(1,sizeof(NODE));
newNode.id=oldNode.id
//for the string that I want to copy I should allocate and use strcpy - in order not to point at the same string
しかし、今は親ノードに関して迷っています。どうすればコピーできますか? 単に行う場合:newNode.parent=oldNode.parent
同じ親オブジェクトを指し、たとえば Id を変更すると、newNode と oldNode の両方の ID が変更されます。どうすればコピーできますか?? 同じものを指ささずに?どうすればポインタ配列をコピーできますか??
ありがとう!