兄弟姐妹帮忙看看捏
我写了一个简单的函数模板,问题是当我用一个长度为9的字符串去初始化长度为15的字符数组,在输出字符数组的内容,运行第一次是正确的,多次运行后就出错
#include <iostream>
#include <algorithm>
#include <string>
using namespace std;
template <class t>
void outputArray(const t* array, int count) {
for (int i = 0; i < count; i++) {
cout << array[i] ;
cout << endl;
}
}
int main()
{
const int a_count = 8, b_count = 5, c_count = 15;
int a[a_count] = { 1,2,3,4,5,6,7,8 };
double b[b_count] = { 1.1,2.2,3.3,4.4,5.5 };
char c[c_count] = "welcome!";//造成运行错误
cout << "a array contains:" << endl;
outputArray(a, a_count);
cout << "b array contains:" << endl;
outputArray(b, b_count);
cout << "c array contains:" << endl;
outputArray(c, c_count);
return 0;
}
正确运行结果:
错误运行结果: