我目前正在嘗試遍歷C++中的struct var。我有一個結構變量,但我需要訪問結構的特定元素。C++通過遞增指針逐位遍歷低谷結構
someStruct {
int a;
int b;
bool c;
...
};
& someStructVar + 1將由結構的大小增加內存。但是我需要一個接一個地增加內存地址。有沒有人有一個想法,如果這是可能的?還有其他方法嗎?
我目前正在嘗試遍歷C++中的struct var。我有一個結構變量,但我需要訪問結構的特定元素。C++通過遞增指針逐位遍歷低谷結構
someStruct {
int a;
int b;
bool c;
...
};
& someStructVar + 1將由結構的大小增加內存。但是我需要一個接一個地增加內存地址。有沒有人有一個想法,如果這是可能的?還有其他方法嗎?
你不能通過指針算法「迭代」結構體的成員,這在C++中是不允許的。
您可以迭代指針arithemtics的唯一方法是C風格的數組。
使用指針對這樣的元素進行迭代是災難的祕訣。你確定你知道他們是如何被包裝進這個結構的嗎?你確定知道使用什麼填充來使它們正確對齊? – tadman
C中最小的可尋址單元是字節,而不是位,所以你不能這樣做。 – dasblinkenlight
@dasblinkenlight,這不是唯一的問題:) – SergeyA