我正在使用char数组编写一个C ++程序。但我认为这会产生问题。
这是我的代码:
#include <iostream>
#include<string.h>
using namespace std;
int main() {
long int t;
cin>>t;
char total[500],a[500],b[500];
cin>>total;
int len=strlen(total);
//cout<<strlen(total);
for(int i=0;i<len/2;i++){
a[i]=total[i];
}
for(int i=0;i<len/2;i++){
b[i]=total[i];
}
cout<<a<<endl;
cout<<b;
return 0;
}
不打印数组。但是当我评论出来时
/*for(int i=0;i<len/2;i++){
b[i]=total[i];
}*/
按预期打印数组a。这有什么问题?
答案 0 :(得分:1)
您的数组不是以NULL结尾的。如果我在a[len/2]=0;
循环后添加b[len/2] = 0;
和for
,则说明其工作正常。