|
10鱼币
- #include <iostream>
- #include <malloc.h>
- #include <stdlib.h>
- using namespace std;
- struct Arr
- {
- int* pBase; //存储的是数组第一个元素的地址
- int len; //数组所能容纳的最大元素的个数
- int cnt; //当前数组有效元素的个数
- };
- void init_arr(struct Arr* pArr,int length);
- bool append_arr();
- bool insert_arr();
- bool delete_arr();
- int get();
- bool is_empty(struct Arr* pArr);
- bool is_full();
- void sort_arr();
- void show_arr(struct Arr* pArr);
- void inversion_arr();
- int main()
- {
- struct Arr arr;
- init_arr(&arr,6);
- show_arr(&arr);
- return 0;
- }
- void init_arr(struct Arr* pArr,int length)
- {
- pArr->pBase = (int* )malloc(sizeof(int) * length);
- if(NULL == pArr->pBase)
- {
- printf("动态内存分配失败!\n");
- exit(-1); //终止整个程序
- }
- else
- {
- pArr->len = length;
- pArr->cnt = 0;
- }
- return;
- }
- bool is_empty(struct Arr* pArr)
- {
- if(NULL == pArr->cnt)
- {
- return true;
- }
- else
- {
- return false;
- }
- }
- void show_arr(struct Arr* pArr)
- {
- if(is_empty(pArr)) //为什么错了?
- {
- printf("数组为空!\n");
- }
- else
- {
- for(int i = 0; i < pArr->cnt; ++i)
- {
- printf("%d",pArr->pBase[i]); // int*
- }
- printf("\n");
- }
- }
复制代码
|
|