热心网友
回答时间:2024-04-23 18:49
#include "stdafx.h"
#include<iostream>
#include<string>
using namespace std;
int main()
{
char string0[20], string1[30];
int i = 0;
for ( i = 0; i <20; i++) //你申明了string0数组空间为20,如果你20个空间都赋值了,那么数组结尾没有结束符\0,你下面cout时,就很可能访问到非法内存,表现出的现象就是非法字符,和程序crash。把20改成19或者将string0申明大一些
{
string0[i] ='a';
}
cout << string0 << endl;
strcpy(string1, string0);
cout << string1 << endl;
}
收起