我定义了一个智能指针
auto ptr = make_shared<int[]>(5);
而另一个阵列
int arr[] = {1,2,3,4,5};
我想将arr中的数据复制到ptr,我尝试使用此命令
memcpy(ptr.get(), arr, 5 * sizeof(int))
但当我尝试像这样打印时
for (int i = 0; i < 5; i++) {
std::cout<<ptr[i]<<std::endl;
}
我得到
malloc(): corrupted top size
Process finished with exit code 134
(interrupted by signal 6: SIGABRT)
ptr初始化有什么问题吗?
1条答案
按热度按时间j5fpnvbx1#
下面是您需要的示例(希望如此):