当前位置: 首页 > news >正文

物流那个网站做推广好湖南郴州最新消息

物流那个网站做推广好,湖南郴州最新消息,建设400官方网站,阿里云买域名目录9. 数组9.1 数组的定义9.2 数组与指针的区别9.3 数组大小计算9.4 数组的赋值9.5多维数组寻址方式9.6 函数数组9. 数组 9.1 数组的定义 C 语言支持数组数据结构,它可以存储一个固定大小的相同类型元素的顺序集合。数组是用来存储一系列数据,但它往往…

目录

  • 9. 数组
    • 9.1 数组的定义
    • 9.2 数组与指针的区别
    • 9.3 数组大小计算
    • 9.4 数组的赋值
    • 9.5多维数组寻址方式
    • 9.6 函数数组

9. 数组

9.1 数组的定义

C 语言支持数组数据结构,它可以存储一个固定大小的相同类型元素的顺序集合。数组是用来存储一系列数据,但它往往被认为是一系列相同类型的变量。

9.2 数组与指针的区别

指针:也是一个变量,存储的数据是地址。

数组名:代表的是该数组最开始的一个元素的地址。

区别:指针是一个变量,可以进行数值运算。数组名不是变量,不可以进行数值运算。

char *str="Hello";
char arrgs[]="Hello";

字符数组:

char *p=(char*)&arrgs == char *p=arrgs ;
char *p=(char*)(&(arrgs[0])) == &arrgs == arrgs;

字符串指针:

char *p=(char*)&str != str; str==str[0] =='H'

结论:

​ 字符数组的 首地址可以用 arrgs ,&arrgs,来表示并且它们相等,但是指针&str和str是不同的,当遇到字符串指针时候要注意处理方式。

9.3 数组大小计算

​ 在我们没有明确数组的元素个数时,在程序中想知道数组单元个数可以使用 sizeof(a)/sizeof(a[0]), sizeof(a) 是得到数组 a 的大小,sizeof(a[0]) 是得到数组 a 中单个元素的大小(因此可以不必要是a[0],a[i]都行)。

9.4 数组的赋值

对于数组的初始化需要注意以下几点:

  1. 可以只给部分元素赋值,当 { } 中值的个数少于元素个数时,只给前面部分元素赋值。例如:
int a[10]={12, 19, 22 , 993, 344};

表示只给 a[0]~a[4] 5 个元素赋值,而后面 5 个元素自动初始化为 0

当赋值的元素少于数组总体元素的时候,不同类型剩余的元素自动初始化值说明如下:

  • 对于 short、int、long,就是整数 0
  • 对于 char,就是字符 ‘\0’
  • 对于 float、double,就是小数 0.0

我们可以通过下面的形式将数组的所有元素初始化为 0:

int nums[10] = {0};
char str[10] = {0};
float scores[10] = {0.0};

由于剩余的元素会自动初始化为 0,所以只需要给第 0 个元素赋值为 0 即可。

  1. 只能给元素逐个赋值,不能给数组整体赋值。例如给 10 个元素全部赋值为 1,只能写作:
int a[10] = {1, 1, 1, 1, 1, 1, 1, 1, 1, 1};
char a[]="hello!"; // 这样赋值之后在结尾会自动加上'\0'。
char a1[]={'h','e','l','l','o','!'}; // 这样赋值是整整好好的6个空间不会自动加上'\0'
所以比较的话,a 的长度比 a1 的要大。

而不能写作:

int a[10] = 1;

9.5多维数组寻址方式

二维数组当作参数的时候,必须指明所有维数大小或者省略第一维的,但是不能省略第二维或者更高维的大小,这是由编译器原理限制的。事实上,编译器是这样处理数组的:

设有数组 int a[m][n],如果要访问 a[i][j ]的值,编译器的寻址方式为。

&a[i][j]=&a[0][0]+i*sizeof(int)*n+j*sizeof(int); // 注意 n 为第二维的维数

因此,可以省略第一维的维数,不能省略其他维的维数。

在定义二维数组的时候对其进行初始化,也可以省略第一维,编译器会根据你的初始化语句自动决定第一维度。

9.6 函数数组

将几个返回类型相同的函数定义到函数数组中,通过函数数组指针来调用

//声明   
static U1 (* const TBL_DIM_OUT[DIM_WELCOME_NUM])(void) = {u1_DimexcontOut,                    /* 室内照明函数                          */u1_DimptrOut,                       /* 点照明函数                      */u1_DimlitOut,                       /* 文字盤照明函数                        */u1_DimfueltempOut                   /* 油表和温度照明函数                     */
};//调用
for(u1_cnt = (U1)0; u1_cnt < (U1)DIM_WELCOME_NUM; u1_cnt++){//依次调用这些函数u1_dimout |= TBL_DIM_OUT[u1_cnt]();}
http://www.yayakq.cn/news/306796/

相关文章:

  • 网站建站公司订单多吗城市联盟网站怎么做
  • 深圳网站建设服务代码网站的空间是
  • 如何做财经网站包装设计公司哪家好
  • 定西市建设网站费用做体育的网站
  • 海南省建设厅网站建设网站的网站公告是什么
  • 好的买手表网站网站制作分工
  • 上海网站改版哪家好河南旅游网页设计
  • 设计得很好的企业网站固原门户网站建设
  • 企业网站开发知名品牌有哪些网页设计师报考条件
  • vs2010 c 网站开发flash制作网站的好处
  • 商城网站解决方案网站建设免费视屏教程
  • 做网站需要工具wordpress 图片暗箱
  • 做海淘网站赚钱吗wordpress充值插件
  • 手机网站图片宽度做网站哪种编程语言最好
  • 网站推广有哪些方案网站的类型大全
  • 保定门户网站网站建设方
  • 三字型布局的网站中文wordpress实例
  • 济南网站维护网络推广方案怎么做
  • 国企网站建设标准公司网站上面的动画怎么做
  • 从零开始建设网站设计师网络称呼
  • 怎样做网络销售网站机械加工网纹标准
  • 别人的网站是怎么做的做网站python和php
  • 本地生活服务网站怎么做网站用什么主机
  • 嘉兴网站建设搭建美容美发培训
  • 建模网站素材承德市网站建设
  • 怎么做符合seo的网站网站开发要学哪些知识
  • h5免费制作平台不用注册seo全网图文推广
  • 网站上怎么做福彩卖家网站项目功能需求清单
  • 外资做网站的公司21dove谁做的的网站
  • 完整网站开发步骤企业微信网站怎么做的