解析:\n占一个字符,strlrn 数值是。/n为转义字符,占一个字节,ASDFG为5个字节,strlen()计算字符串的长度时不会计算隐藏的/0,所以是5+1 6个 sizeof()会计算/0字符
注:
strlen函数:计算的是字符串str的长度,从字符的首地址开始遍历,以 '\0' 为结束标志,然后将计算的长度返回,计算的长度并不包含'\0'。例如str(“abcde”)=5
解析
#include <stdio.h> int main() { int a[3][4] = {1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23};//a是个三行四列的二维数组。 int(*p)[4] = a, i, j, k = 0;//(*p)[4]是由整型数据组成的数组的指针 for (i = 0; i < 3; i++) for (j = 0; j < 2; j++) k = k + *(*(p + i) + j); printf("%d", k); return 0; } |
*(p+i) 相当于p[i],p[i]存储的是二维数组a的i行的数据地址。即 p[i]=&a[i][0];
*(p+i)+j 存储的是 a[i][j]的地址。*(*(p+i)+j)即是 a[i][j]的值。
i,j 最大值分别为3和2。即函数为每个小数组前两个数相加的总和。
1+3+9+11+17+19= 60
解析:k--对于k数值有影响
解析:看不懂先留着