编程语言
首页 > 编程语言> > C++ realloc后数据改变的问题

C++ realloc后数据改变的问题

作者:互联网

由于之前没有使用过realloc函数,用之前做了一个测试。
long * a = new long[5];

for (long i = 0; i < 5; i++) {
a[i] = i;
}

for (long i = 0; i < 5; i++) {
cout << a[i] << endl;
}

cout << endl;

a = (long *)realloc(a, 6);

a[5] = 6;

for (long i = 0; i < 6; i++) {
cout << a[i] << endl;
}
最简单的一个代码,从一个原本为[0 1 2 3 4]的long数组扩展到长度为6的[0 1 2 3 4 6]的数组,并且打印两个数组。然后输出结果:

标签:cout,++,realloc,long,改变,C++,数组,new
来源: https://www.cnblogs.com/ditui123/p/16027590.html