阅读量:0
#include<stdio.h> #include<string.h> int main() { char arr[] = "abcdef"; //printf("%d\n", strlen(&arr)); // 这里取数组的类型是char(*)[7] printf("%d\n", strlen(&arr[0] + 1)); // 5 return 0; }
// 运行注释的代码会报错
// 尽管在这里 打印出来的值 arr 和 & arr的值是一样的 ,但是arr的类型是 char * &arr的类型是char(*)[7] 这里同样解释了为什么&arr+1 会跳过7个元素了