【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);
//输出
}
你在main函数中的这一行语句void equation(double a,double b,double c);是函数的声明不是调用改为equation(a,b,c);就行了
提示main函数的返回值类型必须为int型。同时要在main函数结束执行前添加诸如return 0,之类的语句。
void main() 是C++语言的话这类型是不标准的,改为int main()即可。
任何时候都可以用int main(),所以建议不用void main(),用C++编译器编译C一般不会有什么问题,因为C++是兼容C的。
总结一下就是,C语言标准允许main函数为void类型,按照C++的标准中main必须是int类型,如果你的软件不兼容c那么就只能写成int main(),兼容的话你也可以写成void main也是没有错误的,c中,main的格式,void main (){undefined。
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语言关键字