以下函數的輸出爲「int *」,表示形式參數轉換爲整型指針。這種設計有什麼必要的理由嗎?爲什麼我們不能保留數組類型?爲什麼函數的形式參數的數組類型轉換爲指針?
// the output is "int *"
#include<typeinfo>
void Func(int ar[5])
{
printf("%s\n", typeid(ar).name();
}
int main()
{
int ar[5];
Func(ar);
return 0;
}
也看到這個答案:http://stackoverflow.com/questions/3264611/arguments-in-a-function-prototype/3264641#3264641 – 2010-07-20 08:09:32