对于某些背景,我正在使用 llvmpy 库实现编译器,该库是 LLVM IR 生成的包装器。
我创建了一种代表一个或多个 UTF-8 代码点的字符类型。这些代码点存储在一个数组中,因此字符可以是以下数组之一:
[1 x i32], [2 x i32], ..., [6 x i32]
现在,我想实现一个字符串类型。这将是一个指向数组的指针数组:
[n x [1-6 x i32]*] where n is the string length
但是,(据我所知)LLVM 似乎要求我声明内部数组的长度。所以,虽然我可以存储这个:
[[1 x i32], [1 x i32], [1 x i32]]
我不能存储这个:
[[1 x i32], [2 x i32]]
如果数组指针导致不同长度的数组,有没有办法存储数组指针数组?