gpt4 book ai didi

c - 将指针数组复制到另一个指针的有效方法

转载 作者:行者123 更新时间:2023-11-30 20:55:38 25 4
gpt4 key购买 nike

如何将指针数组复制到另一个指针。

我的方法是这样的

int *ptr2[(i-1)*100];
int *ptr1;

ptr1=&ptr2[(i-1)*100];

有效的复制方法是什么,可以减少 CPU 周期。

最佳答案

如果需要复制(复制)ptr2,则需要使用正确的类型声明ptr1,并为ptr1数组分配空间,然后将 ptr2 的内容复制到 ptr1

#include <malloc.h>
#include <string.h>

int *ptr2[(i-1)*100];
int **ptr1; // a pointer to a pointer to an int

ptr1 = malloc(sizeof(ptr2));
memcpy(ptr1, ptr2, sizeof(ptr2));

注意:这是一个示例。始终确保 malloc 在使用内存块之前已分配该内存块,并在不再需要时将其释放(使用 free)

另一方面,如果您只想创建 ptr2 的别名

int *ptr2[(i-1)*100];
int **ptr1; // a pointer to a pointer to an int

ptr1 = ptr2;

关于c - 将指针数组复制到另一个指针的有效方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31803511/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com