| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1594 人关注过本帖
标题:是不是只有在传址调用时主调函数的类型说明符才可以是void?
只看楼主 加入收藏
菜鸟求知
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2011-9-1
结帖率:0
收藏
已结贴  问题点数:20 回复次数:12 
是不是只有在传址调用时主调函数的类型说明符才可以是void?
#include <stdio.h>
void fun (  int  n )  //该行类型说明符应为double
{   int  a, b, c, k;  double  s;
    s = 0.0;  a = 2;  b = 1;
    for ( k = 1; k <= n; k++ ) {
      s = s + (double)a / b;
       c = a;  a = a + b; b = c;
    }
    return s;
}

main( )
{   int   n = 5;
    printf( "\nThe value of  function is: %lf\n",  fun (  n ) );
}

搜索更多相关主题的帖子: include double 
2011-09-02 09:40
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:3 
错!自己编译一下就知道了么。

授人以渔,不授人以鱼。
2011-09-02 09:42
Luminal
Rank: 6Rank: 6
等 级:侠之大者
帖 子:140
专家分:470
注 册:2011-8-24
收藏
得分:3 
首先楼主要搞清楚函数是怎么定义声明的!书书上有,百度上也有,只要你看过了,就明白你的问题已不是问题
如果到时候还有不理解的地方,我们再探讨!
2011-09-02 09:48
菜鸟求知
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2011-9-1
收藏
得分:0 
void不是返回空值吗?书上好多传址调用的题目主调函数的类型说明符都是void。void 到底怎么个用法啊?我真不懂啊
2011-09-02 09:49
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
首先要从调用处入手:你写printf("%lf", fun())不是?这个语句明确要求fun()必须是double数据类型,那么你还敢在fun()的定义中写void fun()?它必须与要求对应,写double fun()。

用参数返回值,不是这样写printf()的。

授人以渔,不授人以鱼。
2011-09-02 09:53
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
作为地址传递参数返回结果,1楼的写法也是错的,那里根本没有这种意图的体现。

授人以渔,不授人以鱼。
2011-09-02 09:56
Luminal
Rank: 6Rank: 6
等 级:侠之大者
帖 子:140
专家分:470
注 册:2011-8-24
收藏
得分:0 
一下摘录的,有事先离开一会!抱歉
函数的一般形式是:
  type-specifier function_name(parameter list)
       类型说明符      函数名          参数列表
类型说明符定义了函数中return语句返回值的类型,该返回值可以是任何有效类型。如果没有类型说明符出现,函数返回一个整型值。参数表是一个用逗号分隔的变量表,当函数被调用时这些变量接收调用参数的值。一个函数可以没有参数,这时函数表是空的。但即使没有参数,括号仍然是必须要有的。参数说明段定义了其中参数的类型。

  当一个函数没有明确说明类型时, C语言的编译程序自动将整型( i n t)作为这个函数的缺省类型,缺省类型适用于很大一部分函数。当有必要返回其它类型数据时,需要分两步处理:

  首先,必须给函数以明确的类型说明符;其次,函数类型的说明必须处于对它的首次调用之前。只有这样,C编译程序才能为返回非整型的值的函数生成正确代码。
2011-09-02 09:57
菜鸟求知
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2011-9-1
收藏
得分:0 
我只是想搞懂void到底该怎么用用在什么地方啊?
2011-09-02 09:57
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
void是“没有”的意思,用在没有任何返回的地方。

授人以渔,不授人以鱼。
2011-09-02 09:59
A13433758072
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:广东潮州
等 级:小飞侠
威 望:1
帖 子:1182
专家分:2784
注 册:2010-7-22
收藏
得分:3 
仅供参考: 举例: 这里表示此调用函数没有返回值void fun (void )这里是表示函数不接受任何参数

一步一个脚印...............................默默地前进.....
诚邀乐于解答c菜鸟问题,的热心网友加入,  QQ群38490319
2011-09-02 10:13
快速回复:是不是只有在传址调用时主调函数的类型说明符才可以是void?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018099 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved