void在英文中作为名词的解释为“空虚;空间;空隙”;而在C语言中,void被翻译为“无类型”,相应的void *为“无类型指针”。void似乎只有“注释”和限制程序的作用,当然,这里的“注释”不是为我们人提供注释,而是为编译器提供一种所谓的注释。

void的作用:

1、对函数返回的限定,当函数不需要return的返回值时,必须使用void进行限定

2、对函数参数的限定,当函数不允许接受参数时,必须使用void限定,例如:int func(void)。

void的使用规则:

  1. void指针可以指向任意类型的数据,就是说可以用任意类型的指针对void指针对void指针赋值。
  2. 在ANSI C标准中,不允许对void指针进行一些算术运算如p++或p+=1等,因为既然void是无类型,那么每次算术运算我们就不知道该操作几个字节,例如char型操作sizeof(char)字节,而int则要操作sizeof(int)字节。
  3. void指针可以任意类型的数据,可以在程序中给我们带来一些好处,函数中形为指针类型时,我们可以将其定义为void指针,这样函数就可以接受任意类型的指针
  4. void *类型指针不同,任何类型的指针都可以直接赋值给它,无需进行强制类型转换,但这并不意味着,void *也可以无需强制类型转换地赋给其它类型的指针。因为“无类型”可以包容“有类型”,而“有类型”则不能包容“无类型”。

注:return的功能是终止一个函数,函数类型是void类型,也是可以加return的,但是其后面不能加任何数值,表示函数到此为止,如果return后带数值的话会报错。故当使用void时,函数中最好不要用return。

C语言中关键字void的用法相关推荐

  1. C语言中关键字restrict的用法(linux 为 __restrict)

    类型限定词restrict 关键字restrict通过允许编译器优化某几种代码增强了计算支持.它只可用于指针,并表明指针是访问一个数据对象的惟一且初始的方式.为了清楚这样做为何有用,我们需要看一些例子 ...

  2. c语言中关键字static_了解C ++中Static关键字的变体

    c语言中关键字static Hello, folks! Today we will be unveiling another important aspect in the series of our ...

  3. C语言中图形函数及其用法

    C语言中图形函数及其用法  Turbo C 2.0具有丰富的图形功能,它提供了70多个图形函数.在这里只介绍最常用的一部分,其余的图形函数及用法可参阅相关书籍.图形函数均在头文件"graph ...

  4. C语言中关键字const、typedef

    const:const是C语言的一个关键字,是用来定义常量的.const是常属性的意思,当一个变量被const修饰之后,其值不能再被改变了,但它仍然是一个变量,只不过有了常属性. 我们如何才能验证这一 ...

  5. c语言中关键字的含义,c语言中的关键字有哪些?有什么含义?

    c语言中的关键字有哪些?有什么含义? 发布时间:2020-04-23 09:33:30 来源:亿速云 阅读:174 作者:小新 这篇文章主要介绍了c语言中的关键字有哪些?有什么含义?,具有一定借鉴价值 ...

  6. c语言中有关void,sizeof,结构体的一些问题

    void[1]: void是C语言中的空类型,void的用途有二. 1.对函数返回的限定: 如果函数没有返回值,则默认返回整数类型,而不是void类型.c++有很严格的类型,不允许函数不加类型声明,而 ...

  7. js中 javascript:void(0) 用法详解

    javascript:void(0)表示不做任何动作.如: 复制代码代码如下: <a href="javascript:void(0);" οnclick="ale ...

  8. c语言 u2_printf,C语言中关键字restrict的概念,使用范围,例子

    概念: restrict,C语言中的一种类型限定符(Type Qualifiers),用于告诉编译器,对象已经被指针所引用,不能通过除该指针外所有其他直接或间接的方式修改该对象的内容. 渊源: res ...

  9. 怎么在c语言中使用常用对数,【用法】在C语言中使用对数函数的方法

    这篇文章主要介绍了在C语言中使用对数函数的方法,包括以e为底和以10为底的对数计算,需要的朋友可以参考下. C语言log()函数:返回以e为底的对数值 头文件: #include log() 函数返回 ...

最新文章

  1. PHP安装parsekit扩展查看opcode
  2. iOS动画开发之五——炫酷的粒子效果
  3. 让IIS建立的站点默认是.net 2.0的,而不是.net 1.1的代码
  4. 拉取数据_如何拉取公网RTSP/RTMP流在内网多客户端播放
  5. python压缩文件不带根路径_python 压缩文件(解决压缩路径问题)
  6. TCP/IP 通信示例
  7. 秋天 | 等疫情过后,我们继续背起相机去旅行
  8. left join缺失右括号_LeetCode刷题实战31:最长有效括号
  9. RabbitMQ学习之集群镜像模式配置
  10. hystrix文档翻译之metrics
  11. win11错误代码0xc1900101怎么解决 windows11错误代码0xc1900101的解决方法
  12. word2007显示控件工具箱
  13. union和union all哪个效率高
  14. 镁光硬盘测试软件,镁光固态硬盘怎么样
  15. 有两个空酒桶,分别能舀3斤和7斤酒,还有1个装满了10斤的酒桶,我要卖5斤酒给剑客,这该如何是好?
  16. pandas批量处理体育成绩
  17. criteria使用详解
  18. C语言错误信息报告函数strerror、perror的使用
  19. HDOJ 3820 - Golden Eggs 构图最小割(类似二分图的最大独立点权集)
  20. java pinyin4j 官网_Java中文转汉语拼音类库pinyin4j使用示例

热门文章

  1. 【Java应用程序开发】【期末复习题】【2022秋】【答案仅供参考】
  2. 利用Python爬取爬取APP上面的数据
  3. 漫谈递归——递归需要满足的两个条件
  4. oracle连接失败的原因总结
  5. Python——线性回归模型
  6. 打开苹果电脑浏览器的代码
  7. Zookeeper 的基本使用
  8. ERP、OA、BPM是什么?这样搭配对企业管理有奇效!
  9. 深度学习英文缩写_机器学习、深度学习……人工智能那些名词你知道几个?
  10. 媒体报道 | 《数据安全治理自动化技术框架(DSAG)》白皮书诞生,探索数据安全治理技术“最优解”