gpt4 book ai didi

arrays - 如何连接简单数组并在 Common Lisp 中保留元素类型 '(unsigned-bytes 8)?

转载 作者:太空宇宙 更新时间:2023-11-03 18:41:11 24 4
gpt4 key购买 nike

我有两个简单数组,其中元素类型是'(unsigned-byte 8)。如果我使用 (concatenate 'vector array-A array-B),结果数组的元素类型将不再是 '(unsigned-byte 8)。

如何连接数组并在 Lisp 中保持它们的元素类型?

最佳答案

正如 Rainer Joswig 在评论中指出的那样,您可以简单地指定结果向量的元素类型:

(concatenate '(vector (unsigned-byte 8)) array-A array-B)

请注意 documentation说:

If the result-type is a subtype of vector, then if the implementation can determine the element type specified for the result-type, the element type of the resulting array is the result of upgrading that element type.

因此,您的 LISP 实现可以自由地为结果向量选择“更好”的元素类型(例如,如果您指定类似 (unsigned-byte 5) 的内容,则可能会发生这种情况)。

关于arrays - 如何连接简单数组并在 Common Lisp 中保留元素类型 '(unsigned-bytes 8)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23632954/

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