论坛首页 编程语言技术论坛

字符串之指针、数组

浏览 1913 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2009-01-21   最后修改:2009-01-21
C
字符串在程序中可以字符指针和字符数组的形式存储。但编译器访问的形式缺有很大差别。
字符串指针访问:
设 char *p[10]="abcdef";
如要访问p[3]则运行过程如下3部:
1.获取指针p的地址,假设4875
2.取得4875地址中的存储得值,即"abcdef"的地址,假设为3240
3.计算3240+1*3=3243,取得地址3243中的值,即字符'd'
同理可知,如果是p[0],就是"abcdef"的起始地址,p[0]中的值就是'a'

字符数组的访问:
设 char p[10]="abcdef";
如要访问p[3]则运行过程如下3部:
1.获取p的地址,假设4875,即"abcdef"的地址
2.计算4875+1*3=4878,取得地址4878中的值,即字符'd'




论坛首页 编程语言技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics