在下面的示例中,假设 myarray 是一个数组的名称,并且 i 是一个整数类型的变量。表达式 myarray[i] 指定该数组内的第 i 号元素,数组中第 1 个元素的编号为 0,换句话说,第 i 号元素是数组中第 i+1 个元素。
运算符 [] 的左 *** 作数不一定需要是数组名称。一个 *** 作数必须是一个指针类型表达式(例如,数组名称就是这类表达式的一种),同时,另一个 *** 作数必须是整数。表达式 x[y] 等效于(*((x)+(y)))。下面的示例使用下标运算符初始化一个动态生成的数组。
#include <stdlib.h>#define ARRAY_SIZE 100/* ... */double *pArray = NulL; int i = 0;pArray = malloc( ARRAY_SIZE * sizeof(double) ); // 生成这个数组if ( pArray != NulL ) { for ( i = 0; i < ARRAY_SIZE; ++i ) // 对数组进行初始化 pArray[i] = (double)rand()/RAND_MAX;/* ... */}在该示例中,循环体内的表达式 pArray[i] 等效于 *(pArray+i)。i[pArray] 也是正确的,该表示方式也会生成相同的数组元素。 总结
以上是内存溢出为你收集整理的C语言下标运算符([])全部内容,希望文章能够帮你解决C语言下标运算符([])所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)