问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

C编程中void到底是什么意思啊?在什么情况下用这个

发布网友 发布时间:2022-12-27 21:37

我来回答

1个回答

热心网友 时间:2023-02-09 06:21

void在C语言里是指不带返回值的意思。跟函数一起用。
1.void的含义
void的字面意思是“无类型”,void *则为“无类型指针”,void *可以指向任何类型的数据。
这行语句编译时会出错,提示“illegal use of type 'void'”。不过,即使void a的编译不会出错,它也没有任何实际意义。
void真正发挥的作用在于:
(1) 对函数返回的限定;
(2) 对函数参数的限定。
如果指针p1和p2的类型相同,那么我们可以直接在p1和p2间互相赋值;如果p1和p2指向不同的数据类型,则必须使用强制类型

转换运算符把赋值运算符右边的指针类型转换为左边指针的类型。
例如:
float *p1;
int *p2;
p1 = p2;
其中p1 = p2语句会编译出错,提示“'=' : cannot convert from 'int *' to 'float *'”,必须改为:
p1 = (float *)p2;
而void *则不同,任何类型的指针都可以直接赋值给它,无需进行强制类型转换:
void *p1;
int *p2;
p1 = p2;
但这并不意味着,void *也可以无需强制类型转换地赋给其它类型的指针。因为“无类型”可以包容“有类型”,而“有类型”则不能包
容“无类型”。道理很简单,我们可以说“男人和女人都是人”,但不能说“人是男人”或者“人是女人”。下面的语句编译出错:
void *p1;
int *p2;
p2 = p1;
提示“'=' : cannot convert from 'void *' to 'int *'”。
2.void的使用
使用规则:
如果函数没有返回值,那么应声明为void类型
在C语言中,凡不加返回值类型限定的函数,就会被编译器作为返回整型值处理。但是许多程序员却误以为其为void类型。例如:
add ( int a, int b )
{
return a + b;
}
int main(int argc, char* argv[])
{
printf ( "2 + 3 = %d", add ( 2, 3) );
}
程序运行的结果为输出:
2 + 3 = 5
这说明不加返回值说明的函数的确为int函数。
补充:void 中文翻译为"无类型"。常用在程序编写中对定义函数的参数类型、返回值、函数中指针类型进行声明。
void的字面意思是"无类型",void *则为"无类型指针",void *可以指向任何类型的数据。
在C语言中,凡不加返回值类型限定的函数,就会被编译器作为返回整型值处理。但是许多程序员却误以为其为void类型。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
正月里剪头死舅舅这一说法影响太大了,像我这样一个月至少要剪两次头的... 夏季钓黄尾鱼用什么饵料? 夏季什么时候最好钓黄尾 夏季钓黄尾有哪些技巧 win10重置系统如何保留个人文件 win10重装系统怎么保留个人文件 驾驶证处理机关3205850100.是哪个省份的代码,跪求各路大神帮忙,要处理... 江苏省苏州市太仓市交通违章处理需要递交的材料是哪些 南通牌照在江苏省太仓市郑和中路违章可以在太仓市车管所交了罚款扣分... 对于太仓市违章处理在哪里 太仓市违章处理到哪里办理? 南京航空航天大学:离学校最近的大型超市在哪?怎么坐车去?需要多长时间? 南京航空航天大学食堂的饭菜好吃吗? 南京航空航天大学御道街校区的食堂怎么样啊 南京航空航天大学附近的先吃摊点都哪里去了? 南京航空航天大学周围有什么好玩的地方? 南京航空航天大学附近吃饭的地方 爱上特种兵二喵是网红猫吗 怎么样更改车旺大卡上的行车轨迹路线颜色 温州当地叫沿西菜的学名是什么? 跑网约车,可以兼职开网店吗 arcgis的左边图层边栏不见了怎么弄出来 如何判断与已经互删? 【荸荠的做法大全】吃荸荠的做法大全 马蹄(汉语辞汇)详细资料大全 东方年代记手机能玩吗 这种 电源插座 叫什么 ? (图) 怎么用手机玩东方历代记或者东方非想天则这些 东方project怎么手机移植 冰箱需要几天已清理 怎么清理 洛克王国小骨头怎么得 在哪抓 索尼mh410和mh750两个耳机哪个好? 快手作品几千播放量算是优质账号 十月围城孙中山是不是秦少白 我想用竹子做一个杯子,可是老是裂开,有什么办法可以让竹子不裂开 竹子水杯耐用吗 竹子水杯使用注意些什么 华为Nova 2 Plus 魔镜版正式发布,8月9日开卖 赏析今夜初闻长乐钟 如何更新计算机的BIOS 湘中电脑校园网不弹出认证界面 周一综合症怎么办? 如何克服周一综合症 如何应对星期一综合症? 什么是星期一综合症? 什么是星期一综合症 怎么做到家庭教育跟学校教育的和谐统一形成教育合力,促进孩子全面发展 怎样才能解决“星期一综合症”?? 阿卡托纸尿裤原产地 上古卷轴5戴恩在哪 莱迪亚是谁?上古卷轴5:天际里的? 孩子上学随母亲户口,还是父亲户口