gpt4 book ai didi

c 一个数组到另一个数组的大小

转载 作者:太空宇宙 更新时间:2023-11-04 06:44:46 25 4
gpt4 key购买 nike

您好,我有以下代码...

int *a, *b;
int *d;
int N = 2000;
size_t size = N*sizeof(int);

a = (int *) malloc(size);
b = (int *) malloc(size);
...
cudaMalloc((void **) &d, size);

它工作得很好......现在假设我有以下内容

char **t = malloc(2000* sizeof *t);
for(...)
{
...
t[i] = (char *)malloc(sizeof(char)*changing_length);
...
}

如何为 t 执行 cudaMalloc,就好像它是一维数组(考虑到每个元素具有不同的大小)?

最佳答案

如果你有一个常规的二维字符数组,你可以用...计算大小

width * height * sizeof(char)

如果您有一个不规则的二维数组(某些行的长度不同),那么您必须在其他地方跟踪字符总数,或者在执行 cudaMalloc 之前循环并计算您有多少字符。

关于c 一个数组到另一个数组的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1971340/

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