void func(int array[])
{
cout << sizeof(array) << endl;
}
int main()
{
int array[] = { 3, 4, 5 };
func(array);
cout << sizeof(array) << endl;
cout << sizeof(&array) << endl;
char str[] = "1234567";
const char* ch1 = str;
const char* ch2 = "1234567";
cout << sizeof(str) << endl;
cout << sizeof(ch1) << endl;
cout << sizeof(ch2) << endl;
cout << strlen(str) << endl;
cout << strlen(ch1) << endl;
cout << strlen(ch2) << endl;
}
有些比较容易记混的东西,形参是数组的话,其实是指针,我几乎没有看见人这样写,确实容易让人弄错,sizeof是看这种东西占多少字节,strlen是看这个字符串多长,不包括\0