C语言中的指针与参数详解
1. 参数的临时性
在调用函数时,会为函数的每个参数创建一个临时变量。当函数退出(返回调用它的函数)时,这些临时变量就会消失。例如,在调用 DrawDots()
函数时,传入参数值30,这个值会存储在名为 numDots
的临时变量中。一旦 DrawDots()
函数退出, numDots
这个临时变量就不再存在。
需要注意的是,在函数内部声明的变量只能在该函数内部使用,这类变量通常被称为局部变量。不同函数使用相同的变量名来实现不同的目的是完全可行的。以下是一个示例代码:
#include <stdio.h>
void DrawDots( int numDots );
int main (int argc, const char * argv[])
{
int i;
for ( i=1; i<=10; i++ ) {
DrawDots( 30 );
printf( "\n" );
}
return 0;
}
void DrawDots( int numDots )
{
int i;
for ( i = 1; i <= numDots; i++ )
printf( "." );
}
这段代码会打印10行点,每行有30个点。每次调用 DrawDots()
函数后,会打印一个换行符,将光标