#include<stdio.h>
#include<stdlib.h>
//-------静态数组---------
void main1()
{
//int a[1024 * 1024];//栈内容有限,报错,栈溢出
//int num = 100;
//int a[num];//在VC里是不行的GCC没问题,VC数组必须常量,GCC可以是变量,依然可能栈溢出
}
//增加 查找 删除 修改
int a[10];
int length = 10;
void main2()
{
//int a[100];//可以查询修改,但是删除很麻烦,数组是连续的,删除中间一个元素,后面的元素要往前填充
for (int i = 0; i < length; i++)
{
printf("%d\n", a[i] = i);//初始化数组并打印
}
int num = 3;//删除数组里的3
for (int i = 0; i < length; i++)//判定要删除的对象是不是最后一个,是的话直接长度-1
{
if (num == a[length - 1])
{
length -= 1;
}
else
{
for (int i = 0; i < length - 1; i++)
{
if (num == a[i])//这里已经实现了查询,修改,可以赋值给num
{
for (int j = i; j < length-1; j++)//删除第i个元素,后面的元素往前填充
{
a[j] = a[j + 1];
}
length = lengt
内存分配静态数组
最新推荐文章于 2020-04-23 21:02:43 发布