用c語言如何獲取記憶體地址

2021-12-23 01:32:23 字數 1074 閱讀 6200

1樓:匿名使用者

1、獲得函式的地址

函式名實際上就是指標,所以可以通過強制型別轉換來獲取函式的地址。

int i = 0;

i = (int)main;

printf(「%d\n」,i);

這樣我們就獲取了main函式的地址了,其他的自定義的函式也是同樣的道理啊。

2、獲取變數地址

int variab = 0;

int addrvar = 0;

addrvar = (int)&variab;

在變數addrvar中儲存了變數variab的地址。

3、獲得陣列的地址

陣列本身就是指標,它本身就是記憶體地址,和獲得函式地址的方法一樣啊。比如

int array[10];

int addrarr;

addrarr = (int)array;

2樓:栩箭

需要讀取什麼東西的記憶體?

程式自身的, 還是其他程式的...

如果你用的是windows系統的話,需要windows.h這個庫。先要獲取程序id,然後開啟程序,之後就可以用writeprocessmemory和readprocessmemory對記憶體進行讀寫。

3樓:匿名使用者

這是讀記憶體的例子

#include"stdio.h"

#include "string.h"

void main()

這是寫記憶體的例子

#include"stdio.h"

#include "string.h"

void main()

4樓:匿名使用者

用api函式。不過c語言好像直接就是記憶體操作,其實我也在找這方面的資料。我在試用指標能不能讀出來。

麻煩額。樓主找到方法了。來告訴我了。

5樓:匿名使用者

printf("%p",&a);輸出變數a所在記憶體地址

6樓:匿名使用者

printf("%p",a) 輸出a代表的地址

當多個指標變數指向同一記憶體地址,如何管理這些指標

使用計數類來管理,當計數大於1時絕不撤銷指標,只有當計數為1時才撤銷指標,然後刪除指標指向的記憶體。這是共享和指標管理技術。多有論述。當地址被釋放以後,其他指標都要置為null,否則很容易出現野指標異常的 用聯合來管理這些指標變數,即union c語言中同一地址被多個指標變數指向著,有什麼不妥嗎?我...

c語言如何取得系統時間,如何用C語言獲取當前系統時間?

time t ttime 距1900年1月1日的秒數char str 80 struct tm sttm 時間結構,格式請見其它回答time timer sttm localtime ttime strftime str,sizeof str y m d sttm 格式化時間 printf str ...

c語言如何獲取上下左右箭頭並判斷

上下左右箭頭 產生的鍵值是雙鍵值,具體數值與你的鍵盤 設定 有關。有可能 是 十進位制內 224 72 上 224 80 下 224 75 左 224 77 右 程式設計序,用容 int key getch 讀 一個鍵值,如果 它等於 224,則 再 讀 一個鍵值 key2 getch 如果 key...