C语言中 函数没有输入参数 怎么理解

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言中 函数没有输入参数 怎么理解相关的知识,希望对你有一定的参考价值。

"int GetNumber()

char c;
printf("\nPlease input a number (0-9): \n");
c=getch();
if(c>='0'&&c<='9')
return c-'0';
else
return -1;


在上面的程序中,定义了一个名称为GetNumber的函数,该函数没有输入参数,但是具有int型的返回值类型。int GetNumber()为GetNumber函数头部分,大括号之间为函数体部分。"
这个函数没有输入参数吗? printf("\nPlease input a number (0-9): \n");
这个不是提示要输入一个数值吗?
难道函数输入参数,不是这样理解的?
我是C语言的菜鸟,能帮我搞明白这个吗?要说的清楚点的。
送上我所有的分!
我问的是:为什么说GetNumber函数,是没有输入参数的? 这个是我在教材上面看见的

函数定义时在函数名后的圆括号的参数叫“形式参数”,简称“形参”;调用该函数时在函数名后的圆括号内的参数叫“实际参数”,简称“实参”。
int Add( int num1 , int num2) /* num1和num2为形参 */

return num1 + num2;

void main()

int a, b, value
a = 1;
b = 3;
value = Add (a, b); /* a和b为实参 */
printf("%d + %d = %d\\n", a, b, value);


在C语言中,所谓的“输入参数”就是指形参;当形参使用引用传递时,输入参数也可以当作输出参数。
GetNumber()没有形参,也就没有输入参数。至于该函数体内部的变量c及输入语句,只能算是该函数的局部变量及赋值语句而已。简单来说,函数有没有输入参数,只要看函数名的圆括号内是否有参数即可。
参考技术A c=getch();
if(c>='0'&&c<='9')
看到这句话没有,他调用了一个getch的函数。这个函数的功能是从键盘获取一个按键(就是你按下去的) 下面的条件判断让这个值在0-9之间
另外,他GetNumber() 括号里没有写参数,所以当然没有输入一个参数给他
参考技术B printf("\nPlease input a number (0-9): \n");只不过是在终端输出的起到提示作用的语句。
后面的getch也是从终端输入得到的。
函数的参数是在函数调用的时候传进来了,比如GetNumber(num);num就是函数参数,在函数内部,num这个变量可以直接使用,相当于在函数内部定义了一个变量num并且赋了一个值(传进来的值)
参考技术C printf("\nPlease input a number (0-9): \n");
c=getch();
是函数里来控制输入,是互动的输入,要在程序运行时手工提交一个给程序,而你说的参数,可以在主函数中直接调用传参,不需要再手工提交一个!
参考技术D c=getch();
getch()这也是一个函数,用的是这个函数调用赋值,输入应该这这个函数里面

以上是关于C语言中 函数没有输入参数 怎么理解的主要内容,如果未能解决你的问题,请参考以下文章

c语言的输出函数怎么写

请问这个C语言中有参数的函数是怎么传递值的,调用的时候没有参数啊。

C语言中有没有返回数组类型的函数?

C语言中怎样调用函数(举个例子)

C语言函数如何return数组?

c语言用带参数带返回值的函数实现功能:从键盘上输入一个整数n,计算n !.