ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

简单一维数组的代码实现

2021-10-14 20:03:40  阅读:106  来源: 互联网

标签:一维 sizeof int 代码 void 数组 Array array


数组中的元素按一定的顺序存放在一个连续的存储空间中

#include <stdio.h>
#include <stdlib.h>
//数组的简单操作代码
//为了便于理解,简化操作,作了如下删减
// 1.只是操作一维数组
//2.只有核心代码,没有进行健壮性处理,即没有返回错误信息这些代码 
//定义一维数组
typedef struct array
{
	int m;
	int *array;
}Array;
//创建数组
void Create(Array *a,int m) 
{
	a->m = m;
	a->array = (int*)malloc(m*sizeof(int));
	printf("创建数组成功!\n");
}
//销毁数组
void Destory(Array *a)
{
	free(a->array);
	printf("销毁数组成功!\n");
}
//查询数组元素,并赋值给x
void Find(Array a,int i,int *x)
{
	*x = *(a.array + i*sizeof(int));
}
//将x赋值给数组元素
void Store(Array *a,int i,int x)
{
	*(a->array + i*sizeof(int)) = x;
}
//将A数组元素复制给B数组
void Copy(Array a,Array *b)
{
	int i,value;
	for(i=0;i<a.m;i++)
	{
		Find(a,i,&value);
		*(b->array + i*sizeof(int)) = value;
	}
}
//输出数组
void Output(Array a)
{
	int i,value;
	printf("输出数组为:");
	for(i=0;i<a.m;i++)
	{
		Find(a,i,&value);
		printf("%d ",value);
	}
	printf("\n");
}
int main(void)
{
	Array a,b;
	int i;
	Create(&a,2);
	Create(&b,2);
	for(i=0;i<2;i++)
		Store(&a,i,1);
	Output(a);
	Copy(a,&b);
	Output(a);
	Output(b);
	Destory(&a);
	Destory(&b);
	return 0;	
} 

标签:一维,sizeof,int,代码,void,数组,Array,array
来源: https://blog.csdn.net/m0_51122744/article/details/120771408

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有