数组和指针可交换性总结
2005-10-25 19:25
267 查看
1 用a[i]这样的形式对数组进行访问总是被编译器“改写”或解释为像*(a+i) 这样的指针访问。
2 指针始终就是指针。它绝不可以改写成数组。你可以用下标形式访问指针,一般都是指针作为函数参数时,而且你知道实际传递给函数的是一个数组。
3 在特定的上下文中,也就是它作为函数的参数(也只有这种情况),一个数组的声明可可以看作是一个指针。作为函数参数的数组(就是在一个函数的调用中)始终会被编译器修改成为指向数组第一个元素的指针。
4 因此,当把一个数组定义为函数的参数时,可以选择把它定义为数组,也可以定义指针。不管选择哪种方法,在函数内部事实上获得的都是一个指针。
5 在其他所有情况中,定义和声明必须匹配。如果定义了一个数组,在其他文件对它进行声明时也必须把它声明为数组,指针也是如此。
----------------------------------------------------------------------------------------------
引自《C专家编程》 Pter van der Linden
2 指针始终就是指针。它绝不可以改写成数组。你可以用下标形式访问指针,一般都是指针作为函数参数时,而且你知道实际传递给函数的是一个数组。
3 在特定的上下文中,也就是它作为函数的参数(也只有这种情况),一个数组的声明可可以看作是一个指针。作为函数参数的数组(就是在一个函数的调用中)始终会被编译器修改成为指向数组第一个元素的指针。
4 因此,当把一个数组定义为函数的参数时,可以选择把它定义为数组,也可以定义指针。不管选择哪种方法,在函数内部事实上获得的都是一个指针。
5 在其他所有情况中,定义和声明必须匹配。如果定义了一个数组,在其他文件对它进行声明时也必须把它声明为数组,指针也是如此。
----------------------------------------------------------------------------------------------
引自《C专家编程》 Pter van der Linden
相关文章推荐
- 数组和指针的可交换性总结
- 数组与指针可交换性的总结
- 数组和指针可交换性的总结
- 第四章 数组和指针(part5) 总结 & 常用术语
- C/C++(字符串处理)字符指针、字符数组用法大总结
- 字符数组,字符指针,字符串常量以及其sizeof的一些总结
- 读陈浩的《C语言结构体里的成员数组和指针》总结,零长度数组
- 第十章 数组和指针(数组和指针的关系,指针操作)总结 140518
- 内存的堆分配和栈分配 & 字符数组,字符指针,Sizeof总结
- 2016年12月6日学习总结----指针与数组的区别
- 内存的堆分配和栈分配 & 字符数组,字符指针,Sizeof总结
- 指针,数组,变量参数传递的一点总结
- 指针与数组总结
- 黑马程序员——C语言基础学习(四)---数组和指针的总结学习
- 字符数组,字符指针,字符串常量以及其sizeof的一些总结
- 内存的堆分配和栈分配 & 字符数组,字符指针,Sizeof总结
- 内存的堆分配和栈分配 & 字符数组,字符指针,Sizeof总结
- 指针和数组特性总结
- 内存的堆分配和栈分配 & 字符数组,字符指针,Sizeof总结
- C总结-第四章 指针数组(4/6)