C C 動態分配函式暨幾種引數傳遞疑難解析

2021-09-22 17:03:06 字數 892 閱讀 2887

sizeof(x):計算變數x的長度

free(p):釋放指標p所指變數的儲存空間,即徹底刪除乙個變數

new 型別名t(初值列表)

功能:申請用於存放t型別物件的記憶體

int *p1=new int;

或 int *p1=new int(10);

結果值:

成功:t型別的指標,指向新分配的記憶體

失敗:0(null)

delete 指標p

功能:釋放指標p所指向的記憶體。p必須是new操作的返回值

函式呼叫時傳送給形參表的實參必須與形參在型別、個數、順序上保持一致

引數傳遞有兩種方式

傳值方式

傳位址方式—指標變數作為引數

void swap1(float *m,float *n)

傳位址方式—指標變數作引數

void swap2(float *m,float *n)

// 主函式main()

int main(int argc, const char * ar**) {

float a,b;

cin>>a>>b;

swap(a,b);

float a,b,*p1,*p2;

cin>>a>>b;

p1=&a;p2=&b;

swap1(p1, p2);

float a,b,*p1,*p2;

cin>>a>>b;

p1=&a; p2=&b;

swap2(p1,p2);

cout<>a>>b;

swap3(a, b);

cout《傳位址方式—-陣列名作引數

引用型別作引數的三點說明

C C 動態分配函式暨幾種引數傳遞疑難解析

sizeof x 計算變數x的長度 free p 釋放指標p所指變數的儲存空間,即徹底刪除乙個變數 new 型別名t 初值列表 功能 申請用於存放t型別物件的記憶體 int p1 new int 或 int p1 new int 10 結果值 成功 t型別的指標,指向新分配的記憶體 失敗 0 nul...

C C 動態分配

分配失敗,返回空指標 c 兩個函式malloc 與free 下面是 malloc 函式的宣告。void malloc size t size 返回的是void 無型別 指標,故需要對指標做轉換 size 分配的位元組數 include include include malloc 函式需要的標頭檔案...

C C 動態分配記憶體

陣列是最常用的一種資料結構,其缺點是使用時必須確定陣列大小,因此會帶來一些不便 1 需要儲存的資料大小不確定時,預先開闢的空間太小裝不下,太大則浪費空間 2 使用的資料大部分預設儲存在棧 stack 裡,由系統管理,自動分配,自動刪除。但是stack很小,如果讀取的資料很大的話容易溢位。3 系統要等...