可變陣列的實現

2021-10-06 04:24:52 字數 1450 閱讀 5400

#include

"array.h"

#include

#include

const

int block_size=20;

//typedef struct

// array;

//建立乙個可變陣列;

array array_create

(int init_size)

/*array* array_create(array* a,int init_size) */

//釋放陣列;

void

array_free

(array *a)

//要得到陣列有多少個單元;

//封裝!保護實現細節;

intarray_size

(const array *a)

//取乙個元素; 還可以賦值;

int*

array_at

(array *a,

int index)

return

&(a->array[index]);

}讀寫元素的另一種形式;

//int array_get(const array *a,int index)

// //

//void array_set(array *a,int index,int value)

////長大;

void

array_inflate

(array *a,

int more_size)

free

(a->array)

; a->array=p;

a->size+

=more_size;

}int

main

(int argc,

const

char

*ar**)

}array_free

(&a)

;return0;

}

#ifndef _array_h_

#define _array_h_

typedef

struct

array;

array array_create

(int init_size)

;void

array_free

(array *a)

;int

array_size

(const array *a)

;int

*array_at

(array *a,

int index)

;void

array_inflate

(array *a,

int more_size)

;#endif

Object C 中的可變陣列和不可變陣列

在oc中,我們用 nsarray 類 和 nsmutablearray 類來表示陣列,其中,nsarray 類 是 nsmutablearray 類的父類。在oc中,我們陣列是有序的 物件 的集合,即我們的陣列只能儲存 物件 在oc中我們的陣列中元素型別不能是 int float cgpoint 等...

C STL deque可變陣列

deque資料應該很多,這裡不多所了,直接一點上程式吧!include include include include 用於distance deque模板,deque迭代器 using namespace std stl deque 是乙個動態陣列,與vector類似 可在開頭與末尾插入 刪除資料...

結構可變陣列

開拓空間 array array create int init size 該段 用malloc來為結構體裡面的陣列指標分配乙個我們需要的空間,然後把位址分配給結構體裡面的array 為array結構體分配乙個空間並返回乙個array型別 用於主函式裡面array結構體型別直接複製 恢復空間,清空記...