size_t length = sizeof(array)/sizeof(*array); 这样计算出数组的长度,但是有个例外的情况,就是数组作为形参传递给函数的时候,时间上传递的只是数组的首地址所以 sizeof(array) == 4 例如: void foo (int array[]) { cout<<sizeof(array)<<endl; } 这时输出的值为 4 (32位机器下地址的长度)