char arr1[]={'a','b','c'};
char arr2[10]={'a','b','c'};
cout<<strlen(arr1)<<endl;//输出7
cout<<strlen(arr2)<<endl;//输出3
strlen(arr1)的时候,它会越界搜索到arr2,因为arr1没有结束符,而arr1和arr2是连在一块的内存,如果是遍历到系统内存,程序就有可能挂
,因为有些系统内存是不也许访问的
char arr1[]={'a','b','c'};
char xx = 0;///0的ASC值为0
char arr2[10]={'a','b','c'};
cout<<strlen(arr1)<<endl;//输出3
cout<<strlen(arr2)<<endl;//输出3
这样也就把错误隐藏了