C语言的字符串(篇章之二)

指针数组

【一】定义:
指针用于存储地址,它和数组名紧密的联系在一起。而上章我们讲的字符串呢?如果一个数组的元素是字符指针呢?一维呢?二维呢?还有多维的呢?
对此,我们这样是这样定义的:如果一个数组中的各个元素都是字符指针,我们就称该数组为字符指针数组(指针数组)。

char *name[] 就是一个指针数组。

【二】指针数组的具体应用
(1)使用指针创建字符串
- 其实,字符串的定义自动就包含指针。
eg:

定义number1[100];其就为100个字符声明存储空间,并自动的创建一个包含指针常量number1,是存储的是number1[0]的地址。

切记,跟一般的常量一样,指针常量指向是明确的,不能被修改。
- 而用指针创建字符串。
eg:
char *number2=”how are you?”;
这个number1和number2是不同的,number1是按照数组定义方式定义的,而number2本身就是一个指针变量,它只是通过显式的方式明确了 一个指针变量。

【三】指针数组和数组指针的应用区别:
在本章节中【一】和【二】系统介绍了指针数组。我们就介绍一下数组指针吧。
- 我们在前面的章节有介绍了数组以及指针,其实就是它们的复合运用。由于本人的整个逻辑安排以及篇章分配的整体性。我就在这简单举个例子吧。以后拿个项目来来交流交流。

数组指针的一般形式为:type (*) []
eg:

int (*p)[40]。指针p用来指向含有40个元素的整型数组。

例子:

 #include <stdio.h>
 int main(void)
 {
   int array[2][4]={1,2,3,4,5,6,7,8};
   int i,j;
   int (*p)[4];
   p=array;    //p指向array下标为0那行的首地址
   for(i=0;i<2;i++)
   {
     for(j=0;j<4;j++)
     printf("array[%d][%d]=%d\n",i,j,p[i][j]);
   }
   return 0;
 }

【来自本人的简书】:
http://www.jianshu.com/writer#/notebooks/4124910/notes/4203102

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值