---恢复内容开始---
问题:
编写程序连接两个 C 风格字符串面值,把结果存储在一个C 风格字符串面值。
代码:
#include <iostream>
using namespace std;
int main()
{
	const char *pStr1 = "Hello ";
	const char *pStr2 = "World!";
	size_t len = strlen(pStr1) + strlen(pStr2);
	char *result_str = new char[len + 1];
	strcpy(result_str, pStr1);
	strcat(result_str, pStr2);
	cout<<result_str<<endl;
	delete []result_str;
	return 0;
}
总结:
(1)动态数组,使用new表达式且有 [],必须使用delete表达式且有 []释放。
(2) strcpy和strcat第一个参数必须是数组指针。
原文:http://www.cnblogs.com/gis-flying/p/4231919.html