在下面的main
功能,我打電話circleArea()
並告訴它我想使用的參數circleRadius
。爲什麼從聲明時調用函數參數的名稱不同?
後,在circleArea()
函數聲明,我改變參數的名稱theRadius
。
據我瞭解,因爲我聲明的說法,當我調用的函數,當我宣佈的功能,它知道我要在功能使用的價值,我可以給它一個不同的名稱。真的嗎?
而如果是,當我想在函數中使用多個參數,會發生什麼?
int main()
{
float pictureWidth, pictureHeight, pictureSurfaceArea,
circleRadius, circleSurfaceArea; // [4.4]
pictureWidth = 8.0;
pictureHeight = 4.5;
circleRadius = 5.0; // [4.7]
pictureSurfaceArea = pictureWidth * pictureHeight;
// Here we call our function
circleSurfaceArea = circleArea(circleRadius);
}
float circleArea(float theRadius) // [5.1]
{
float theArea;
theArea = 3.1416 * theRadius * theRadius; // pi times r square [5.4]
return theArea;
}
是,值傳遞給函數,它是免費撥打任何它想要的說法。請記住,局部變量和參數具有* local *作用域。其他地方的同一個名字可以完全指代其他的東西。 –