linux下C编程(08)---数组和指针

一维数组

一般形式

数据类型 + 名称 +【长度】

初始化 3种形式

  1. 根据下标
    在这里插入图片描述
  2. 声明时候加入等号
    在这里插入图片描述
  3. 声明时候不指定长度,根据初始化的个数来确定。
    在这里插入图片描述

字符串使用的一维数组

字符串数据和一般的字符数据区别是,前者还包含了字符串结束符:“\0”.
在这里插入图片描述
C没有专门的字符串类型,但是允许使用字符串常量和字符串数组,并提供字符串操作函数。
在这里插入图片描述

二维数组

格式声明:
数据类型 + 名称 +【长度1】【长度2】
数组长度是 长度1* 长度2

二维字符串数组

可以看做多个一维字符串数组,第一组是字符串的个数
在这里插入图片描述

多维数组

格式同二维
总长度同二维
由于需要占用内存的关系,三维数组以上的多维较少使用。

markdown常用语法

一、标题  ###
二、要加粗的文字左右分别用两个*号包起来
三、要加删除线的文字左右分别用两个~~号包起来
四、引用 在引用的文字前加>即可
五、三个或者三个以上的 - 或者 * 都可以。
六、图片 ![图片alt](图片地址 ''图片title'')
七、 [超链接名](超链接地址 "超链接title")
八、无序列表用 - + * 任何一种都可以
九、数字加点
十、上一级和下一级之间敲三个空格即可
十一、表格
			表头|表头|表头
			---|:--:|---:
			内容|内容|内容
			内容|内容|内容
十二、代码块:代码之间分别用三个反引号包起来,且两边的反引号单独占一行

指针与指针变量

定义

定义时候,需要指定所指向的数据类型。格式如下:

数据类型 * 变量名

代表指针变量,声明后,才可以写入指向某种数据类型的变量地址。
在这里插入图片描述
其中& 运算符称为取地址运算符,作用是取得变量的内存地址。

指针变量的引用

* 指针变量   ---这里的作用是访问指针变量所指向的内存单元的值。

在这里插入图片描述

注意:

C有两个指针运算符,取地址运算符和间接引用运算符,都是一元,优先级仅仅次一元算术运算符。

指针和数组

指针和一维数组

定义了一维数组后,可以定义一个与其类型一样的指针变量指向该数组,等同于pi =&i[0],
在这里插入图片描述

总结

  1. pi+n 或者 i+n 便是数组元素i[n]的地址 ,即&i[4].
  2. *(pi+n) 和 *(i+n) 便是各元素,相当于 i[n]
  3. 指针变量也可以用数组的下标,如,pi[n] ,效果相当于 *(pi +n)

指针和二维数组

在这里插入图片描述
1.每一行都有一个首地址, i[0] 代表 &i[i][0] i[1] 代表i[1][0]的地址

指针与字符串数数组在这里插入图片描述

puts()函数的作用是将字符串无格式输出,当PC作为参数,会内存中将PC所指向的地址开始,输出到字符串结束符之间。

指针的地址分配

指针变量的取值是内存的地址,应该是安全的,不是随意的,应使用编译系统提供的标准函数来实现。
malloc 和 free 包含在stdlib.h中。
在这里插入图片描述
注意字符串有结束符。

指针数组

一种特殊的数组,存放的是同一数据类型的内存定制。
数据类型 * 数组名【长度】
在这里插入图片描述
在这里插入图片描述

执行指针的指针

定义:
数据类型 **变量名
在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
11-05 137

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值