現在我從這篇文章中知道關於assigning one struct to another,我可以將一個結構變量分配給另一個相同類型,並且一個淺將發生複製。在C中分配結構的指針實例
struct Test t1;
struct Test t2;
t2 = t1;
但是,如果我這樣做呢?
struct Test *t1;
struct Test *t2;
t1 = malloc(sizeof(struct Test));
t2 = malloc(sizeof(struct Test));
//assign t1 and t2's fields some data
*t2 = *t1;
在這種情況下會發生同樣的memcpy嗎?
指針,是的。它*指向的是*,否(正如書面所言,'t1'無論如何都是不確定的,所以它的UB甚至可以評估它)。 – WhozCraig
哦,是的,這就是我的意思。我現在編輯這個問題。 – rubndsouza