在C++中,使用iostream,可以打印變量的內存地址。例如:C++將內存的地址轉換爲值?
std::cout << &variable << std::endl;
// Example Result: 002AFD84
但是,如果我想將該內存地址存儲到變量中呢?如將內存地址轉換爲字符串或double(或int等)?或者甚至將該字符串或double(或int等)再次轉換回內存地址?
我想這樣做的各種原因,其中一個是:這將允許我將DLL中的數據的內存地址返回到調用DLL的程序和它的功能。最重要的是,我不必跟蹤DLL中的數據本身,因爲數據可以通過內存地址來引用。
由於約束條件,我無法在此特定情況下使用指針。約束條件是:我正在使用的解釋性編程語言無法訪問指針。由於這個原因,指針不能用於引用DLL之外的數據。
作爲一個側面問題,內存地址使用什麼數字格式?他們似乎總是8個字符的長度,但我無法弄清楚這是什麼格式。
指針似乎是合理的。 – chris
不,它沒有。我有限制,這就是爲什麼我對我所問的問題感到好奇。 – user3519915
有什麼限制?通常在C++應用程序中,你傳遞的內存是作爲指針傳遞的 – JarkkoL