若一个函数类型为void,则在定义中仍然使用return,只是写为return;这样行不行呢?谢谢啦!

主要是谭浩强老师那本书上说为void就不能有return语句了,但是我见过return;这种,这种又没有具体的返回值,是否就可以理解为函数是void型的呢?谢谢啦

首先,void main 在新标准中是错误的。 main() 返回一个整型给调用它的程序。int 返回类型是可以省略的(但不建议)。

不返回值并不代表函数没用。它可以输出信息,读写文件等干很多别的事情。在 C 语言中,也可以给函数传递指针参数,让函数修改相应的内存空间数据,这样函数返回后,传入指针所指向的数据已经改变了,变相达到返回结果的目的(这在 C 中很常见)。

没有 return (但函数未声明为 void)时根据不同的系统/编译器,可能返回某些值。比如 gcc 编译器在打开 -Wall 选项时会可能警告你非 void 函数没有返回语句,因为这时函数可能返回的值是非常古怪的:
warning: control reaches end of non-void function

声明为 void 的函数也可以 return,后面不加东西,像这样:
return;
以使函数立即返回(比如函数执行出错,后面的语句不应该被执行
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-09-11
若一个函数类型为void,则在定义中仍然使用return,只是写为return; 这是非常正确的.

至于谭浩强 说不能return,是为了让初学者减少迷惑,实际上,这个return;是必须的,只不过,你不写,系统也会自动return而已.

如果想学好c++,建议看国外经典书,或者是汉译版,至于国人的书.............我就不多说了
相似回答