重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
不是必须有返回值。如果没有返回值类型名为"void"。
十余年建站经验, 网站设计制作、成都网站设计客户的见证与正确选择。创新互联建站提供完善的营销型网页建站明细报价表。后期开发更加便捷高效,我们致力于追求更美、更快、更规范。
void函数的定义:
void+函数名()//无类型+函数名
{// 程序代码
}
如果没有返回值类型名为"void", 整数类型int 类型返回值为整数类型int,以此类推……
类型名有:void int long float int* long* float* ……
扩展资料:
需要说明的是:
1、一个C语言源程序可以由一个或多个源文件组成。
2、每个源文件可由一个或多个函数组成。
3、一个源程序不论由多少个文件组成,都有一个且只能有一个main函数,即主函数。是整个程序的入口。
4、源程序中可以有预处理命令(包括include 命令,ifdef、ifndef命令、define命令),预处理命令通常应放在源文件或源程序的最前面。
5、每一个说明,每一个语句都必须以分号结尾。但预处理命令,函数头和花括号“}”之后不能加分号。(结构体、联合体、枚举型的声明的“}”后要加“ ;”。)
6、标识符,关键字之间必须至少加一个空格以示间隔。若已有明显的间隔符,也可不再加空格来间隔。
参考资料:
百度百科-函数
无返回值的函数,只进行某种操作。
有返回值的函数,可以将某个变量或指针返回其调用函数。
两者形式上的区别如下:
无返回值:void
fun1();
有返回值:int
fun2();
调用的区别:
无返回值:
main()
{
……
fun1();
……
}
有返回值:
main()
{
int
a;
……
a=fun2();
……
}
C语言程序中,若函数无返回值,则应该对函数说明的类型是void。
如果函数所体现的计算不需要返回结果,则数据类型可以指定为void类型。
注意,这种情况下在主调函数中调用该函数,该函数调用表达式不能被用作子表达式给其他变量赋值。
void的字面意思是“无类型”,void *则为“无类型指针”,void *可以指向任何类型的数据。
扩展资料
使用void类型指针要注意的几条规则:
1、void*类型只有地址信息没有类型信息,所以不能计算偏移。
C/C++中的指针通常来说有两个属性:
(1)指向变量
(2)指向对象的地址和长度
指针其实就是存储被指向变量的地址,并不保存其长度;而且存的这个地址仅是变量的首地址,并不是该变量占据内存的所有地址空间。
2、任何指针(包括函数指针)都可以赋值给void指针。
特点:
(1)不需要类型转换;
(2)只获得变量/对象地址而不获得大小。
3、void指针赋值给其他类型的指针时都要进行转换。
特点:转换类型也就是获得指向变量/对象大小。
4、void指针在强制转换成具体类型前,不能解引用。
原因:void指针只知道指向变量/对象的起始地址,而不知道指向变量/对象的大小(占几个字节)所以无法正确引用。
5、void指针不能参与指针运算,除非进行转换。
如果函数没有返回值,那么应定义为void类型。
void的字面意思是“无类型”,void *则为“无类型指针”,void *可以指向任何类型的数据。
void几乎只有“注释”和限制程序的作用,定义一个void变量没有意义,不妨试着定义:
void的作用在于:
1、对函数返回的限定:如果函数没有返回值,那么应声明为void类型。
2、对函数参数的限定:如果函数无参数,那么应声明其参数为void;如果函数的参数可以是任意类型指针,那么应声明其参数为void *。
扩展资料:
void的使用举例:
在C++语言中声明一个这样的函数:
int function(void)
{
return 1;
}
则进行下面的调用是不合法的:
function(2);
因为在C++中,函数参数为void的意思是这个函数不接受任何参数。
在Turbo C 2.0中编译:
#include "stdio.h"
fun()
{
return 1;
}
main()
{
printf("%d",fun(2));
getchar();
}
编译正确且输出1,这说明,在C语言中,可以给无参数的函数传送任意类型的参数,但是在C++编译器中编译同样的代码则会出错。在C++中,不能向无参数的函数传送任何参数。
所以,无论在C还是C++中,若函数不接受任何参数,一定要指明参数为void。
参考资料来源:百度百科-void