#include <iostream>
#include <cstring>
using namespace std;
int main()
{
char *p = "xyz";
char s1[] = "ABCDEFG";
char s2[] = "XYZ";
cout << "Before strcat(s1, s2): \n";
cout << "\ts1 = [" << s1 << "], length = " << strlen(s1) << endl;
cout << "\ts2 = [" << s2 << "], length = " << strlen(s2) << endl;
cout << "s1 = " << &s1 << endl;
cout << "s2 = " << &s2 << endl;
strcat(s1, s2);
cout << "After strcat(s1, s2): \n";
cout << "\ts1 = [" << s1 << "], length = " << strlen(s1) << endl;
cout << "\ts2 = [" << s2 << "], length = " << strlen(s2) << endl;
cout << "s1 = " << &s1 << endl;
cout << "s2 = " << &s2 << endl;
strcat(s2, p);
cout << "*p = " << p << endl;
cout << "\ts1 = [" << s1 << "], length = " << strlen(s1) << endl;
cout << "\ts2 = [" << s2 << "], length = " << strlen(s2) << endl;
system("pause");
return 0;
}
电脑不能上传,就只好自己敲结果了:
Before strcat(s1, s2):
s1 = [ABCDEFG], length = 7
s2 = [XYZ], length = 3
s1 = 0x22ff60
s2 = 0x22ff5c
After strcat(s1, s2):
s1 = [ABCDEFGXYZ], length = 10
s2 = [XYZ], length = 3
s1 = 0x22ff60
*p = xyz
s1 = [yz], length = 2
s2 = [XYZxyz], length = 6
s2 = 0x22ff5c