为什么在 C++中对于包含其他类型数据的数组的sizeof(array)
行为方式不同?bool array
版: 我问是因为
sizeof(boolarray)/sizeof(boolarray[0])
不要给出布尔数组的大小。
但这个简单的代码打印:
4
1
/////////////////////////
#include<iostream>
using namespace std;
void printBoolArray(bool* boolarray){
cout<<sizeof(boolarray)<<"\n";
cout<<sizeof(boolarray[0]);
}
int main(){
bool boolarray[10]={false};
printBoolArray(boolarray);
}
知道我理解函数中的 sizeof 给出了引用的对象的大小,这是我使用 C++ 的 9 天,抱歉这个愚蠢的问题,现在很明显