黑马程序员技术交流社区

标题: 函数调用的问题 [打印本页]

作者: 清茶用水煮    时间: 2015-6-22 22:02
标题: 函数调用的问题
今天学了函数调用,有几个问题不是很明白,函数调用用在什么地放啊,有参数的和没参数的能相互转化吗,
作者: S970028126    时间: 2015-6-22 22:48
本帖最后由 S970028126 于 2015-6-22 22:49 编辑

你想在哪里用函数就在哪里函数调用,函数有参数和没参数完全不一样,又何来转化呢
作者: 丁铭检    时间: 2015-6-23 09:56
支持沙发。。。
作者: cuin    时间: 2015-6-23 12:52
完全看自己需求啊,函数用来封装独立功能的代码段,比如我要让用户输入一个字符串,然后再打印出来。你可以把输入写成一个函数,输出写成一个函数。然后再主函数里面调用。
  1. #include <stdio.h>

  2. //从键盘获取一个整数,返回获取整数的值
  3. int GetNumber(){
  4.         int inputNumber=0;
  5.         scanf("%d",&inputNumber);
  6.         return inputNumber;
  7. }

  8. //打印整数
  9. void PrintNumber(int inputNumber){
  10.         printf("%d\n",inputNumber);
  11. }

  12. int main(int argc, char *argv[])
  13. {
  14.         //首先调用GetNumber获取整数
  15.         int intputNumber=GetNumber();
  16.         //获取到整数后打印
  17.         PrintNumber(inputNumber);
  18.         return 0;
  19. }
复制代码


GetNumber()这个函数之所以有返回值,无参数是因为我只需要在这里让用户输入一个数字就好,然后我要把输入的数字返回。PrintNumber(int inputNumber)这个函数之所以有参数无返回值,是因为我要通过传递参数接收我刚才输入的那个数字,然后把它打印出来,不需要再返回其他结果。不知道你能不能理解
作者: sdzh    时间: 2015-6-23 13:52
首先,你先搞清楚函数的作用,简单的函数是用来简化代码的,比如:同样的代码我们要重复写几遍,这时就需要定义一个函数将重复的代码放到函数体内,等需要写那些重复的代码是就调用定义的函数。
其次,有参函数和无参函数不能转换,但可以嵌套调用。
ps:如果不明白可以继续提问
作者: XiaoBaoMi    时间: 2015-6-23 21:31
楼上说的不错学些了
作者: Dove丶凡    时间: 2015-6-23 21:46
可以简化代码啊,你想啊,一个函数里那么多内容,太乱了。调用起来就很轻松了。  有参无参不一样,不能转换
作者: pp584995727    时间: 2015-6-23 22:28
函数不能嵌套,还有有参数和无参数不能相互转化
作者: pp584995727    时间: 2015-6-23 22:36
函数不能嵌套,还有有参数和无参数不能相互转化
作者: 沙睿    时间: 2015-6-23 22:43
只要在使用函数之前调用就可以,但一般定义在main函数上面




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2