C语言_初成长_数组
来源:互联网 发布:淘宝客服名称大全 编辑:程序博客网 时间:2024/05/16 22:01
在C语言里面,数组的使用是非常频繁的,但是对于数组的使用,经常会有一些细节方面的问题,导致产生一些错误,所以我想对一维数组和二维数组的初始化和使用写一个小小的总结。
数组的创建: 数组是一些相同类型元素的集合,所以对数组的创建格式是 类型 + 自定义标识符 + [ ] 比如 int arr1[5]; char arr2[10]; int arr3[5][10];
在一维数组中cha arr1[ ] 里可以不用写数字,但是对于二维数组arr4[ ][ ],前一个可以不写但是后一个必须写,可以不知道有多少行,但是必须知道一行有多少个元
素,就是可以 char arr3[][10]; 但是不能 char arr3[ ][ ]; 或者 char arr3[5][ ];
对于int arr[ ],在[ ]里,只能填常量或者常量表达式,不能填变量比如 int a=3; 的a 。
数组的初始化: 初始化一般在创建数组就初始化了,int arr1[ ]={0}; int arr2[5]={0}; char arr1[5][10]={0};
对于char arr[]={1,2,3};数组的元素个数是3,对于char arr[]="abc";数组元素个数为4,因为对于没有定义长度的数组最后一个元素默认以“\0”结束。
数组的使用: 如果要给arr[ ]赋值,需要给数组中指定的元素赋值,arr[0]为第一个元素,arr[4]=5就是给第5个元素赋值为5。
如何输出一个数组?printf("%d",arr[]);或者printf(("%d",arr);都是错误的,输出数组只能把该数组的元素一个一个输出,可以用到for(;;)循环,比如输出arr[10];
for(i=0;i<10;i++) { printf("%d ",arr[i]); }
数组在内存中的保存: 在一维数组里,元素是一个一个依次保存的,所以知道首元素的地址和数组长度,就可以yi'ci把一个数组传给函数,是把这个数组的首元素地址传给函数,
所以函数不再创建临时数组,这样对储存空间的占用太大,所以在函数里对数组是可以进行直接修改的。
在二维数组里,元素依然是一个一个保存的,虽然在理解里,可以把二维数组理解成一个矩阵一样,但其实在内存里,第二行的行数保存在第一行最后一个
元素地址的后面。所以对二维数组,我个人认为也可以这样理解,其实二维数组也是一个一维数组,只不过每个元素多了一个下标。
- C语言_初成长_数组
- C语言_我的初成长
- C语言_我的初成长_关键字
- C语言_初成长_操作符和表达式
- C语言_数组
- C语言_数组
- C语言_数组
- C语言_数组
- C语言_数组
- C语言_数组应用
- C语言_二维数组
- C语言_二维数组
- C语言基础二_数组
- C 语言_数组算法例子
- iOS C语言5_二维数组
- C语言_数组与指针
- Objective-c语言_数组练习题1
- Objective-c语言_数组练习题2:
- eclipse与idea常用快捷键对比
- java堆、栈、堆栈的区别
- 遍历控件属性
- 初学者的学习复习day_7
- 三种数据库常见的URL以及端口
- C语言_初成长_数组
- Java 8的新特性—终极版
- SpringMVC-1
- 并查集和Union-Find算法
- 企业/产品VR展示
- 任学堂说教育:一个初中女语文老师的王者荣耀日常!
- spark join shuffle 数据文件的读取
- jquery实现textarea 高度自适应 转自http://www.jb51.net/article/61997.htm
- 希尔排序算法的实验