确定传递给函数的布尔数组的大小

时间:2019-12-13 13:57:08

标签: c++ c arrays

使用传递给函数的标准C数组时,很难获得数组的大小:

#include <iostream>

void customFunction(bool* arr) {
    std::cout << sizeof(arr) << std::endl; // returns 8
    std::cout << sizeof(arr) / sizeof(arr[0]) << std::endl; // returns 8 as well
}

int main() {
    bool myArray[5] = {0, 1, 1, 0, 0};

    std::cout << sizeof(myArray) << std::endl; // returns 5

    customFunction(myArray);

    //...
}

如何仅使用普通C函数和原始类型来获取函数内部的bool数组的大小?

0 个答案:

没有答案