码迷,mamicode.com
首页 > 编程语言 > 详细

《黑马程序验》数组与函数(C语言)

时间:2015-04-09 00:58:55      阅读:155      评论:0      收藏:0      [点我收藏+]

标签:

一、数组的概念

1.一维数组的定义与使用

int array[10];//定义一个一维数组,名字叫array,一共有10个元素,每个元素都是int类型的

array[0] = 20;
array[1] = 30;
array[9] = 80;

错误写法:

//array[10] = 100;//没有 array[10]这个元素

 

数组在内存中就是一段连续的空间,每个元素的类型是一样的

2.一维数组初始化

int array[10] = { 100, 1, 5, 3, 4, 5, 6, 7, 8, 0 };//定义数组的同时为数组的成员初始化值
int array[10] = { 3, 7, 9 };//将数组的前三个元素赋值,其余元素置为0
int array[10] = { 0 };//将数组所有的元素都置为0

//通过循环遍历数组的每个元素,将元素的值置为0
int i;
for (i = 0; i < 10; i++)
{
	array[i] = 0;//通过循环遍历数组的每个元素,将元素的值置为0
}

 二、数组内部存储结构

int main()
{
       char array[5] = {‘a‘,‘A‘,‘b‘,‘B‘,‘c‘};
       for(int i = 0;i <5;i++)
       {
         printf("array[%d] = %c\n",i,array[i]);    
       }
      return 0;
}

1.内存的分配是从高地址到低地址进行的,但一个数组内部元素又是从低到高进行的

2.数组名代表了数组的存储地址

3.数组元素的地址为其存储空间的首字节

 

三、数组和函数

#include <stdio.h>
void change(int array[])
{
array[0] = 20;
}
void change2(int n)
{
  n = 20;
}
int main()
{   
int i;
int ages[] ={10,84,97,96,85};
change(ages);
printf("ages[0] = %d\n",ages[0]);
change2(ages[1]);
printf("ages[1] = %d\n",ages[1]);
    return 0;
}

 

1.数组作为函数参数,如果传递的是数组的地址,那么修改函数形参数组元素的

2.64 bit 编译环境下指针占8个字节

3.如果形参内是基本数据类型则是值传递,不改变数组元素的值

数组实例:

技术分享

 

《黑马程序验》数组与函数(C语言)

标签:

原文地址:http://www.cnblogs.com/shtz/p/4404940.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!