C Primer 第四章 陣列和指標

2021-08-07 17:45:42 字數 777 閱讀 4225

4.2指標的引入

1.指標變數的定義

string *pstring;語句把pstring定義為乙個指向string型別物件的指標變數。或者也可以如下定義: string* ps;

如果需要再乙個宣告語句中定義兩個指標,必須在每個變數識別符號前再加符號*宣告:

string* ps1, *ps2;

4.指標可能的取值

int ival = 1024, ival2 = 2048;

int *pi = &ival, *pi2 = &ival2;

int **pi3 = π

pi = pi2;

cout << *pi <

7.void*指標

可以儲存任何型別物件的位址

double obj = 3.14;

double *pd = &obj;

void *pv = &obj;

pv = pd;

void* 表明指標與一位址值有關,但不清楚儲存在此位址上的物件的型別。

4.3.1 建立動態陣列

c++中使用new 和 delete自由儲存區中分配儲存空間

1.動態陣列的定義

動態分配陣列時,只需要指定型別和陣列長度,不必為陣列物件命名,new表示式返回指向新分配陣列的第乙個元素的指標。

int *pia = new int[10];

5.動態空間的釋放

動態分配的記憶體最後必須進行釋放,使用delete 表示式釋放指標所指向的陣列空間。例如:detele pia;

c primer第四章(陣列和指標)學習筆記

1.字元陣列既可以用一組由花括號括起來 都好隔開的字元字面值進行初始化,也可以用乙個字串字面值進行初始化。但是 字串字面值包含乙個額外的空字元 null 用於結束字串。2.乙個陣列不能用另乙個陣列初始化,也不能將乙個陣列賦值給另乙個陣列。3.c 提供了一種特殊的指標型別void 它可以儲存任何物件的...

第四章 陣列和指標

由於陣列和指標這部分知識比較深奧,本菜鳥決定將c和c 的指標部分的知識點全歸到c語言部分來整理,所以這裡就只總結一些題目。下列陣列的值是什麼?string sa 10 int ia 10 int main 解答 sa 和sa2 為元素型別為string 的陣列,自動呼叫string 類的預設建構函式...

第四章 陣列和指標

4.1 陣列 1 陣列的初始化 在函式體外定義的內建陣列,都初始化為0 在函式體內的內建陣列,均無初始化 顯示顯示初始化則可不必制定陣列的維數 初始化如果元素為類型別,則自動的條用該類預設的建構函式 2 特殊字元陣列 char ca c 會自動的在c 後新增乙個空的字元 o 而char ca2 ca...