c语言中的void

我在书上看到“void是‘空'的意思,即执行此函数后不会产生一个函数值(有的函数在执行后会得到一个函数值,例如正弦函数sin(x))。”
然而
下文又出现一个这样的程序:
#include<stdio.h>
void main()
{
int a,b,sum;
a=123;b=456;
sum=a+b;
printf("sum is %d\n",sum);
}
sum应该是个函数吧?而且这儿不是得到一个值了吗?这到底是怎么一回事啊??

void 被翻译为"无类型",相应的void * 为"无类型指针"。常用在程序编写中对定义函数的参数类型、返回值、函数中指针类型进行声明。

void 的作用

1.对函数返回的限定,这种情况我们比较常见。

2.对函数参数的限定,这种情况也是比较常见的。

一般我们常见的就是这两种情况:

(1)当函数不需要返回值值时,必须使用void限定,这就是我们所说的第一种情况。例如:void func(int a,char *b)。

(2)0当函数不允许接受参数时,必须使用void限定,这就是我们所说的第二种情况。例如:int func(void)。

扩展资料:

2011年10月12日,C语言之父丹尼斯·里奇辞世,在众多的国际互动论坛上,计算机爱好者们以特有的方式纪念这位编程语言的重要奠基人。许多网友的发帖中没有片言只字,仅仅留下一个分号“;”。

在日益纷繁复杂的程序设计语言王国中,C语言因其简洁、有效、通用的特性而始终占据一席之地。被誉为“C语言之父”,同时也是操作系统Unix之父的C语言发明人之一——丹尼斯·里奇10月9日以70岁之龄辞世。

尽管通过Unix拿奖拿到手软,但令里奇引起最大关注和反响的则是C语言的问世。1999年,里奇和汤普逊为发展C语言和Unix操作系统一起获得了美国国家技术奖章。

参考资料:

百度百科-Void

百度百科-C语言关键字

温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-07-31
楼主。首先先区别一下你的这句话:

即执行此函数后不会产生一个函数值

这个值指的是最终的返回值return 。也就是他没有return.
但是他是有动作的。他可以处理打印printf。也可以处理地址(后面数组指针你就知道了),也可以有数据处理和运算。
只是最终没有return。

而这里sum是在void这个函数里计算的是得到一个。他并不是return。

还有sum这里不是一个函数。他也是一个变量。
他最终没有return;本回答被提问者采纳
第2个回答  2009-08-01
楼主要看清楚哦,变量类型和函数可是不一样的诶~~
这个程序在一开始声明(或者说是定义)sum是一个整形数,是一个int型,那它自然就不是一个函数了,该程序是说将a+b的值赋值给sum,再将sum输出。
一个main函数意外的函数需要函数的定义(如果函数定义在后,还需要有函数声明);有的函数是库函数,也就是说不是你写的函数,是已经写好的函数在使用时需要#include包含进程序中,可以直接使用的函数,比如那个正弦函数是包含在math.h的库函数中的,使用的时候要在函数的最开头加上#include<math.h>,才能使用该函数。
第3个回答  2009-07-31
void 是没有返回值,
程序中的主函数显然没有返回值。
sum是一个整型变量,不是函数。
第4个回答  2009-07-31
sum是一个表达式啊...如果要做function的话..定义应该是

int sum(int a, int b) {
return a + b;
}

P.S. main其实返回了个int,表示程序运行状态~~ 不过很多编译器void也可以~
相似回答