0
比方說,我有一些typedef struct {int b;} some_t;
和一個指針a
這樣的結構。那麼,爲什麼是爲什麼這些指針推理會導致不同的結果?
(*a).b = 5;
不一樣
some_t c = *a;
c.b = 5;
?
比方說,我有一些typedef struct {int b;} some_t;
和一個指針a
這樣的結構。那麼,爲什麼是爲什麼這些指針推理會導致不同的結果?
(*a).b = 5;
不一樣
some_t c = *a;
c.b = 5;
?
在第二,c
是複製的*a
,和c.b
是(*a).b
副本。
c.b = 5
修改副本,而不是原來的。
那麼選擇'c'作爲名字是多麼恰當。 ;-)現在全部清楚,謝謝! – sungako1974 2011-04-17 07:25:35
我認爲你的意思是c.b相當於(* a).b,不是副本。 – dcousens 2011-04-17 08:03:48
@丹尼爾:不,它是價值的副本。 – GManNickG 2011-04-17 09:12:23