C语言在数组中设置值
示例
通常通过方括号访问数组值:
int val; int array[10]; /* Setting the value of the fifth element to 5: */ array[4] = 5; /* The above is equal to: */ *(array + 4) = 5; /* Reading the value of the fifth element: */ val = array[4];
由于操作数对+运算符是可交换的(->交换定律),因此以下等效:
*(array + 4) = 5; *(4 + array) = 5;
因此,下一条语句也等效:
array[4] = 5; 4[array] = 5; /* Weird but valid C ... */
以及这两个:
val = array[4]; val = 4[array]; /* Weird but valid C ... */
C不执行任何边界检查,访问已声明数组之外的内容是未定义的(访问已分配块之外的内存):
int val; int array[10]; array[4] = 5; /* ok */ val = array[4]; /* ok */ array[19] = 20; /* undefined behavior */ val = array[15]; /* undefined behavior */
热门推荐
1 如何训练狗狗不叫
2 训练狗狗不叫
3 训练狗狗随行
4 怎么训练狗狗不叫
7 训练比熊狗狗教程
10 上海狗狗训练
11 怎么训练狗狗上厕所
12 训练狗狗趴下
13 狗狗服从训练
14 训练狗狗拒食
15 训练狗狗笑
16 训练狗狗大便
17 训练狗狗立
18 训练狗狗捡东西