
C语言实现的轻量级多维数组库
smolar是一个开源的C语言多维数组库,类似numpy但更轻量,仅包含一个文件。目前支持float类型的N维数组,实现了创建、初始化、遍历和广播等基本功能。该项目探索多维数组实现原理,适用于学习和教育目的。未来计划扩展数组操作、支持更多数据类型,并引入并行计算提升性能。
一个用C语言实现的类似numpy的微型多维数组,但只有一个文件。
我一直想深入研究多维数组的实现。最终,受到numpy的启发,我决定尝试一下。我想从头开始实现所有功能,因此C语言是完美的选择。
目前,smolar只支持float数据类型的N维数组。也就是说,N维数组中的每个元素都是float类型。我这样做是因为:
只有一个文件:smolar.c
所有内容,我是说所有内容都在这个文件中。
使用clang编译器编译并运行此文件:
$ clang smolar.c -o smolar $ ./smolar
数据类型