Java程式設計師學習C 之陣列和動態陣列

2021-07-03 15:31:08 字數 2069 閱讀 6945

陣列:

#include using namespace std;

//模板函式

template void dump(t val)

void dump1(int a)

int main()

;//賦值少乙個沒關係,沒有賦值會有預設值0

int *pa = a;

int *pa2 = a;

//a是乙個指標指向陣列的第乙個元素

cout << "a=" << a << endl << "&a[0]=" << &(a[0]) << endl;

for (int i = 0; i < len;i++)

cout << "***************====陣列型別和指標型別********************===" << endl;

cout << sizeof(a) << ":" << typeid(a).name() << endl;//24:int[6]

dump(a);//4:int*

//在陣列宣告的作用域之內,a是陣列型別;在作用域之外(包括函式傳遞),a退化成乙個整形指標

cout << "********************陣列型別取位址********************==" << endl;

cout << "a=" << a << endl;

cout << "&a=" << &a << endl;//和上面的值一致都是第乙個元素的位址

cout << "a+1=" << a+1 << endl;//陣列第二個元素的位址(+4)

cout << "&a+1=" << &a+1 << endl;//陣列後乙個變數的位址(+4*6)

cout << "********************指標型別取位址********************==" << endl;

dump1(a);

return 0;

}

動態陣列:

#include using namespace std;

/*c++記憶體管理

棧:編譯器自動分配和刪除變數的區

儲存如區域性變數,函式引數等;

高效但空間有限

堆:儲存由應用程式分配和刪除的區

不釋放分配的記憶體會造成記憶體洩露

全域性/靜態儲存區:儲存全域性變數和靜態變數

常量儲存區:存放常量,不允許修改

*/int main()

delete p;

return 0;

}

區別:

二維的陣列:

#include using namespace std;

void print1(int a[2][3], int rowlen, int collen) }}

void print2(int (*a)[3], int rowlen, int collen) }}

int main()

; //int a[i_col] = ;第一維的可以省略

print1(a, i_row, i_col);

//指向二維陣列的指標變數,格式:資料型別 (*指標名)[一維陣列長度]

//int(*p)[4]

print2(a, i_row, i_col);

//指標陣列,格式:資料型別 *陣列名[陣列長度]

//char *ary[2] =

//二維陣列和指標陣列的差別?

char str1 = "hello";

char str2 = "test";

char str3 = "!!";

char array1[3][8] = ;//陣列裡面儲存了字串資料

char *array2[3] = ;//陣列裡面儲存了指向字串資料的位址

char *array3[3] = ;//陣列裡面儲存了指向字串資料的位址

return 0;

}

黑馬程式設計師 C 陣列的學習

陣列的知識點學習 陣列是通用的資料結構,在c 當中使用陣列,需要建立system.array型別的物件。陣列是可索引的資料的集合。資料的型別既可以是內建的,也可以是自定義的 c 當中陣列就是物件本身。陣列是system.array類的乙個宣告的例項,在使用陣列的時候,也可以使用此類的所有方法和屬性。...

黑馬程式設計師 c語言 陣列學習

使用陣列為了方便一次性定義多個變數,同時為了方便使用這些變數 乙個陣列就是多個變數的有序集合 1 定義乙個陣列,就定義了很多的變數 2 這每乙個變數都是陣列的乙個元素或成員 3 陣列是乙個有序的集合,也就是說可以使用乙個數字引用變數 4 陣列中每乙個元素的使用和乙個一般的變數使用一樣 一維陣列是元素...

黑馬程式設計師 學習C語言陣列

陣列 陣列的基本概念 把具有相同型別的若干變數按有序的形式組織起來。這些按序排列的同類資料元素的集合稱為陣列。特點 只能存放一種型別的資料,如全部是int型或者全部是char型,陣列裡的資料成為元素。陣列的分類 按儲存的內容分類 數值陣列 字元陣列 指標陣列 結構陣列 按維度分類 一維陣列 二位陣列...