比方說,我們有以下的C代碼地址:查找main函數的局部變量
#include<stdio.h>
int main(){
char *a = "askakasd";
return 0;
}
我試圖找到我的本地變量「a」,但我不知道如何識別它找在此輸出,其中p爲C代碼編譯:
比方說,我們有以下的C代碼地址:查找main函數的局部變量
#include<stdio.h>
int main(){
char *a = "askakasd";
return 0;
}
我試圖找到我的本地變量「a」,但我不知道如何識別它找在此輸出,其中p爲C代碼編譯:
它不存在。由於代碼在執行時無法判斷它是否存在,鏈接程序將其刪除以節省空間。
因此,如果我像這樣使用它,printf(「%s」,a)仍然不會顯示任何內容。我必須問你,我怎麼能得到nms輸出一行描述「a」存儲的位置? –
您可以將'char * a ='askaskasd';'移到'main'之外,迫使名稱公開。 –
它可以被優化,因爲它從來沒有使用過。 – wildplasser
http://catb.org/jargon/html/M/mu.html – Arkadiy
@Arkadiy,你的回答與我的問題有什麼關係?這是一個有趣的帖子,但是。 –