采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
老师,我定义了一个char类型数组,长度为5,循环执行了17次,这是为什么呢? 代码:
char crr[] = { 'a','b','c','d','e' }; //crr长度为5 int len = 0; while (*arr!='\0') { cout << *arr << ""; //输出:abcde烫烫烫烫烫 arr++; len++; } cout<<len<<"\n"; //len=17
你要清楚C语言数组定义的本质,这里数组定义的方式有问题,使用"abcde"或{'a','b','c','d','e','\0'} 这样的定义才能保证以'\0'作为结尾。你这样定义'\0'的位置是随机的,所以长度不是确定的。
登录后可查看更多问答,登录/注册
一部大片,一段历史,构建C++知识框架的同时重塑你的编程思维
1.2k 12
1.3k 10
1.2k 9
1.0k 9