要打印出 'int16_t *pOutAudio' 的长度,可以使用 C/C++ 中的 sizeof 运算符。sizeof 运算符返回一个对象或类型的大小(以字节为单位)。由于 'pOutAudio' 是一个指针,所以 sizeof(pOutAudio) 将返回指针的大小,而不是指向的数组的大小。

为了获取数组的大小,可以使用 sizeof 运算符和数组的长度(以字节为单位)进行除法运算,以获取数组中元素的数量。

下面是一个示例代码:

#include <iostream>

int main() {
    int16_t* pOutAudio;
    int arraySize = 10;  // 假设数组的大小是10

    // 打印 pOutAudio 指针的大小
    std::cout << "pOutAudio 指针的大小:" << sizeof(pOutAudio) << " 字节" << std::endl;

    // 打印 pOutAudio 指向的数组的长度
    std::cout << "pOutAudio 指向的数组的长度:" << sizeof(*pOutAudio) / sizeof(*pOutAudio) << std::endl;

    return 0;
}

在上面的示例代码中,我们假设数组的大小是 10。首先,我们使用 sizeof(pOutAudio) 来打印 'pOutAudio' 指针的大小。然后,我们使用 sizeof(*pOutAudio) 来打印 'pOutAudio' 指向的数组的长度。注意,由于 int16_t 是一个 16 位的整数类型,所以 sizeof(*pOutAudio) 返回的是一个元素的大小。我们将其除以 sizeof(*pOutAudio) 来获取数组的长度。

请注意,sizeof 运算符返回的是以字节为单位的大小。如果要以元素的数量为单位打印数组的长度,还需要进一步除以一个元素的大小。

C/C++ Jni 开发:如何获取 int16_t 指针指向数组的长度

原文地址: https://www.cveoy.top/t/topic/qnNF 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录