如果我有:Ç - 上指針指數爲指針
struct X {
int a;
struct X* next;
}
struct X** ptr;
PTR與結構X的地址初始化,並且每個結構X的 next指向另一個結構X.什麼會得到一個通過使用
ptr[i] // where i is unsigned int
這裏是我的問題來源:(它的鏈接代碼的SELinux):code
類型定義於:types
如果我有:Ç - 上指針指數爲指針
struct X {
int a;
struct X* next;
}
struct X** ptr;
PTR與結構X的地址初始化,並且每個結構X的 next指向另一個結構X.什麼會得到一個通過使用
ptr[i] // where i is unsigned int
這裏是我的問題來源:(它的鏈接代碼的SELinux):code
類型定義於:types
你會得到垃圾。對於p[i]
中的指針運算來說,你需要在內存中(在一個數組中)一個接一個地存儲對象(在本例中是指向結構的指針)。
在你的情況下,你需要遵循next
指針i
次。
struct X *p = *ptr;
for (j = 0; j < i; ++j) p = p->next;
/* now p points to the i-th struct */
如果結構是實際上在陣列中,這等同於
struct X *p = (*ptr)[i];
但在這種情況下,next
將是無用的。
在那個代碼中,'htable'確實是一個指針數組。它被分配在第35行。 –
ptr[i]
將指向i
指針ptr
。假設ptr
有一排i
指針,這些指針被假定爲指向X
類型的元素。
親愛的downvoter ....請解釋我爲什麼你投了票。從我的角度來看,我所說的絕對正確。所以如果有任何錯誤的陳述,請解釋我(或任何其他人)什麼是不正確的,因爲我想提高我的知識。 (可能這就是爲什麼我們都在這裏) – dhein
[C - 索引應用於指針指針]可能的重複(http://stackoverflow.com/questions/19043395/c-index-applied-to-pointer-to-指針) – tristan
waight,你究竟是什麼問?如何訪問下一個?或者,你的問題真的只是ptr [i]的執行價值是什麼? – dhein
和代碼中究竟代碼適合您的示例代碼?我無法找到它 – dhein