新网创想网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
C语言:函数前加void是表示函数的返回值为空,void表示空
创新互联是一家专业提供路南企业网站建设,专注与网站设计制作、成都网站建设、H5开发、小程序制作等业务。10年已为路南众多企业、政府机构等服务。创新互联专业网络公司优惠进行中。
返回值为空表示此函数可以没有return语句,或者使用return;语句
返回值概念:一个函数的函数名既是该函数的代表,也是一个变量。由于函数名变量通常用来把函数的处理结果数据带回给调用函数,即递归调用,所以一般把函数名变量称为返回值。通俗点来说就是函数执行完毕后得到的结果。
返回值的类型可以有很多 void、bool 、int 、以及自定义的类型等等。
void意思是主函数(main)的数据类型空返回值。
void的字面意思是“无类型”,void *则为“无类型指针”,void *可以指向任何类型的数据。
没有返回值的函数:功能只是完成一个操作,应将返回值类型定义为void,函数体内可没有return语句。
有返回值的函数:函数的最后会有一个返回值return,可以用来获取该函数执行结果返回给该函数,让外部调用该函数的。
扩展资料
void的使用
示例:
add ( int a, int b )
{
return a + b;
}
int main(int argc, char* argv[])
{
printf ( "2 + 3 = %d", add ( 2, 3) );
}
参考资料来源: 百度百科—void
参考资料来源:百度百科—返回值
【void的含义】
void的字面意思是“无类型”,void
*则为“无类型指针”,void
*可以指向任何类型的数据。
void几乎只有“注释”和限制程序的作用,因为从来没有人会定义一个void变量,
void真正发挥的【作用】在于:
(1)
对函数返回的限定;
(2)
对函数参数的限定。
我们知道,在定义函数时,加在函数名前的“void”表示该函数没有返回值。但在调用时,在函数名前加“(void)”的作用又是什么呢?
最明显的一点就是表示程序并不关心调用该函数后的返回值是什么,比如函数strcpy,我们直接用“strcpy(des_str,
src_str);”这样的形式来调用。“(void)strcpy(des_str,
src_str);”这样的形式还真不多见!
原因是这种写法不针对人,也不针对编译器,而是针对静态代码检测工具,它会把函数返回值作为一项检测标准。在某些大公司,比较重视代码规范,若在代码静态检测时需要检测该项。此时就需要用在被调用的函数(名)前加上“(void)”这种形式来告诉静态代码检测工具程序并非没有处理该函数的返回值,而是该处确实不需要处理它(该函数的返回值),不需要再对该处代码作此项检测。其实这和我们在代码中使用“#pragma
warning
(disable:
XXXX)”的道理是一样的。
l例如:
统计整数里面各位
1
2
3
的个数
//***************************************************
#
include
stdio.h
int
c1,
c2,
c3;
void
fun(long
n)
{
c1
=
c2
=
c3
=
0;
while
(n
!=
0)
{
switch
(n
%
10)
{
case
1:
c1++;
break;
case
2:
c2++;
break;
case
3:
c3++;
}
n
/=
10;
}
}
int
main()
{
long
n;
scanf("%ld",
n);
//输入整数n
fun(n);
//调用自定义函数fun
printf("C1=%d
C2=%d
C3=%d\n",
c1,
c2,
c3);
//输出
}
void有两种意思。第一种意思是无返回值,也就是说,void放在函数前面,那么,函数结束的时候,不需要return什么值(其实也可以写return;);
第二种意思是任意返回值。这个意思,在某些应用上很有用。一般用来修饰指针。即void指针。