。
指針變量是存放指針(某個變量地址)的變量,。
;這幾句話對理解指針非常有幫助。
c = *pointer = &c;
;
cout << c << endl; cout << *pointer << endl; cout << hex << &c << endl; cout << pointer << endl; cout << << endl;
#---------------------------------------------------------------------------------#
指針基類型的作用:當用指針遍歷時,+1等於幾個byte取決與指針基類型;
;
#---------------------------------------------------------------------------------#
數組與指針
指向數組第一個元素的指針。
是指向數組第一個元素的指針,即a相當於&a[0];
是"指向數組"的指針,將跨越16個字節;
了一級;
是數組的第一個元素a[0], 即*a等價於a[0];
了一級;
#include<iostream><iomanip>
a[] = {,,,<< hex << a << endl;
cout << &a << endl;
cout << &a+ << endl;
cout << *(&a) << endl;
cout << *(&a)+ << endl;
}
這是數組a在內存中的存放形式,非常有助於理解。
;
#include<iostream><iomanip>
a[][] = {{,,,},{,,,},{,,,<< hex << a << endl;
cout << &a[] << endl;
<< a+ << endl;
cout << &a[]+ << endl;
<< *a << endl;
cout << a[] << endl;
cout << &a[][] << endl;
<< *a+ << endl;
cout << a[]+ << endl;
cout << &a[][]+ << endl;
<< &a+ << endl;
}
指向數組第一個元素的指針。,可能是一個小數組(如上例);
了一級;
的一級;

#---------------------------------------------------------------------------------#
指針用作函數返回值時,必須保證!
#include<iostream> * value1 = & * value2 = & *p, *==<< *p << endl;
解決辦法: 將局部變量變為即可。或者也可以設為全局變量(不過這明顯不是個好主意)。
* value1 = &
參考文獻