gpt4 book ai didi

c - 通用矩阵 : how to pass a type in a function argument

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

我创建了一个像这样的通用矩阵结构:

typedef struct mat_t {
/**
* \brief matrix structure
*/
unsigned int c, l;
void **matrice;
}* mat;

我的问题是学习如何为矩阵分配内存,因为它可以包含复数、 float 或其他...因此,我想知道如何将类型传递给我的函数参数以分配内存。

mat allocate_mat(unsigned int l, unsigned int c, **<type>** )

也许,我应该为这个函数使用定义宏吗?

最佳答案

Maybe, should I use a define macro for this function ?

是的,你可以定义一个宏在最后一个参数中接受一个类型,并调用在最后一个参数中接受一个大小的真正的函数。

#define allocate_mat(MAT_L, MAT_C, MAT_TYPE) allocate_mat_sz(MAT_L, MAT_C, sizeof(MAT_TYPE))
mat allocate_mat_sz (unsigned l, unsigned c, size_t size);

关于c - 通用矩阵 : how to pass a type in a function argument,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16708329/

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