c語言指標輸出,C語言指標輸出 char str 2 printf c n , str printf x n , str printf x n ,str

時間 2022-05-05 22:10:02

1樓:黑丶雨

在char *str = "2"中,str指向了字元 '2' 的地址, str的記憶體中裝的是字元'2'的地址,但自己也有一個地址,它的地址就是&str。

getmemory(&str) 傳入的是指標str自己的記憶體地址,而非它指向的地址;

getmemory(str)傳入的是指標str指向的地址,而非它自己的地址;

2樓:

首先,char *str是定義一個指標型別,你這一句相當於char *str;str="2";應該不是你的本意

其次,指標並不是地址,而是存了一個值,這個值是一個地址,指標本身也有地址

3樓:劍秀潔

&str是把str記憶體中地址所指向的值,當做取值

C語言指標陣列求輸出結果,為什麼

陣列是順序儲存的,給你畫個記憶體圖 p賦予a 0 0 的地址後,p就是1了,p 2 是a陣列裡第3個元素,也就是3,p 4 是第5個,也就是5,m p p 2 p 4 是把它們3個乘起來乘起來是15 像這樣的二維陣列,用指標時把它看在一維的就可以了 答案是15 p是陣列起始位置指標,二維陣列在記憶體...

C語言 如何輸出指標所指向空間的大小

c語言無法輸出指標所指向的空間的大小!一般,我們獲取一個變數所佔記憶體空間的方法為 sizeof 變數名或型別名 如 int a int aa 10 int p aa 現在的機器一般為32位或64位機,int型別佔四個位元組,所以輸出4 printf sizeof a d sizeof a 輸出4 ...

C語言陣列(指標)越界訪問,C語言指標越界問題,大神指教!!!

與編譯器無關,只與記憶體管理機制有關,是作業系統級別的問題,堆疊的讀取方式只是資料結構上的不同,在機器層面,依然是單純的記憶體讀寫操作 陣列越界訪問的危險性不好評估,但確實是最嚴重的危險之一 結果基本上會100 崩潰,但是崩潰的原因很可能不一樣,就算是同一段越界 跑幾遍,原因也可能是不一樣的 指標越...