Возможный дубликат:
Sizeof array passed as parameterC Размер ++ из массива
Я глупо с этим SizeOf оператора в C++, у вас есть какие-либо идеи, почему это 4 и 12?
void function (int arg[]) {
cout<<sizeof(arg)<<endl; // 4
}
int main()
{
int array[] = {1, 2, 3};
cout<<sizeof array<<endl; // 12
function (array);
return 0;
}
[Размер массива передан как параметр] (http://stackoverflow.com/questions/1328223/sizeof-array-passed-as-parameter) – Blastfurnace
См. Также http://stackoverflow.com/questions/1641957/is- array-name-a-pointer-in-c и http://stackoverflow.com/questions/720077/calculating-size-of-an-array - это FAQ. –