通过索引或指针对数组元素进行访问
2017-05-11 08:04
204 查看
指向数组元素的指针可以用来访问特定索引位置的数组元素,并且指向数组元素的指针的算术运算和数组索引的算术运算两者之间具有相同的语义。下表展示了访问数组a(元素类型为T)时抵达常见操作。
通过索引或指针对数组a(元素类型为T)进行访问的代码
实例代码一:
使用指针进行数据访问
使用索引进行数据访问
通过索引或指针对数组a(元素类型为T)进行访问的代码
基于索引的代码 | 基于指针的代码 |
---|---|
int i; | T *p; |
i = 0; | p = a;或p = &a[0] |
a[i] | *(p + i) |
a[i].f | (p + i)->f |
i ++ | p ++ |
i += K | p += K |
i = N | p = &a 或 p = a + N |
使用指针进行数据访问
size_t strlen(const char * str) { register const char *s; for(s = str; *s; s++) ; return s - str; }
使用索引进行数据访问
int strlen(const char *s) { int i = 0; while(a[i ++]) ; return i - 1; }
相关文章推荐
- C语言:通过指针对数组元素进行排序
- 通过指针进行迭代和通过索引进行迭代是否产生相同代码
- 通过protected,private继承的子类不能通过基类指针进行访问。
- 拒绝访问错误进行代码修改与索引服务运行时
- .Net2.0中通过委托和事件进行线程安全的控件访问
- 当mysql中指定的socket路径改变时如何通过ODBC进行访问?
- Linux下通过系统调用(API)和C语言库函数对文件进行访问
- TeamViewer - 通过Internet进行远程访问和远程支持的一体化解决方案
- [C++]给指针赋值和通过指针进行赋值的区别?
- SQL Server Compact 与 SQL Server 2005 通过远程访问进行数据同步
- 通过指针访问堆中的数据成员
- ★ .Net2.0中通过委托和事件进行线程安全的控件访问
- 用扩展ACL防止一台主机通过telnet进行访问
- 用标准ACL拒绝特定主机通过telnet进行访问
- 通过访问jsp文件,建立索引,查询索引
- 通过Spring进行远程服务访问
- 通过指针访问类的静态成员函数
- 通过代码对远程机器的磁盘信息进行访问的方法
- 通过vtable指针访问声明为private的虚函数
- 指针:通过指针变量访问它所指向的函数