008 指標操作符

2021-06-28 04:40:38 字數 907 閱讀 7258

c語言精彩程式設計百例第9個例子 指標操作符

源程式如下:

#include void main ()

begin = 10;p = & begin;end = *p;

movl	$10, -8(%ebp)   # begin

leal -8(%ebp), %eax # eax = &begin

movl %eax, -4(%ebp) # p = eax

movl -4(%ebp), %eax # eax = p

movl (%eax), %eax # eax = *p

movl %eax, -12(%ebp) # end = eax

&操作符取位址 , *操作符取對應位址的內容

printf("p=%d\n",p);

subl	$8, %esp

pushl -4(%ebp)

pushl $lc2

call _printf

addl $16, %esp

printf("*p=%d\n",*p);

subl	$8, %esp

movl -4(%ebp), %eax

pushl (%eax)

pushl $lc3

call _printf

addl $16, %esp

對比這兩條語句傳遞的引數可見 p :-4(%ebp) ; *p : (-4(%ebp))。  在記憶體中存的變數是p.   p是指向int 的指標, *p 是這個位址下對應的int .

c 入門008 指標

指標是乙個變數,其儲存的是值的位址。1.宣告 初始化 賦值 int pt 指標pt指向int型別 總有人瞎定義 int pt,py 創造乙個指標pt和乙個int變數py 初始化 int yang 5 int pt yang 2.指標的危害 int pt pt yang 事實上,賦給指標只要是位址就行...

指標用操作符 和 ,引用使用操作符

指標與引用看上去完全不同 指標用操作符 和 引用使用操作符 但是它們似乎有相同的功能。指標與引用都是讓你間接引用其他物件。你如何決定在什麼時候使用指標,在什麼時候使用引用呢?首先,要認識到在任何情況下都不能用指向空值的引用。乙個引用必須總是指向某些物件。因此如果你使用乙個變數並讓它指向乙個物件,但是...

86 指標運算子過載

智慧型指標實現 person類有showage 成員函式 如果new出來的person物件,就要讓程式設計師自覺的去釋放 delete 有了智慧型指標,讓智慧型指標託管這個person物件,物件的釋放就不用操心了,讓智慧型指標管理 為了讓智慧型指標想普通的person 指標一樣使用 就要過載 和 5...