返回void*的情况

  • void*作为函数的返回类型的情况
    • 导入
    • void*介绍
    • 代码示例
    • 结论

void*作为函数的返回类型的情况

导入

 C语言中有一种返回值类型比较特殊,就是void*,void作为返回值我们都很熟悉了,但是一般情况void*作为返回值的情况很少见,因此有些童鞋可能对相关方面有疑惑,当初笔者也是在一道题中遇到的这种返回类型,并没有明白什么意思,后来查阅了一些资料有了一些了解,现在把我的这些经验分享给大家!

void*介绍

 void* 就是一个任意类型的指针,和void恰恰相反,void* 它并不是空,也不是什么都不返回,而是可以返回一个任意类型的指针,这里需要谨记的有两个点,一就是任意类型,二是指针

代码示例

 在这里我们给出了一个简单的void* 返回int* 类型的函数和一个返回char* 类型的函数,具体请看一下代码。

#include <stdlib.h>
#include <stdio.h>
void reInt(int);
void* reIntp(int*);
void* reChar(char*);
int main()
{int num=10;int *nump;char str[10]="CSDN";char* strp;reInt(num);nump = (int*) reIntp(&num); //强制类型转化不能忘!strp = (char*)reChar(str); //强制类型转化不能忘!printf("主函数输出:%d\n",*nump);printf("主函数输出:%s\n",strp);return 0;
}
//一般返回类型的函数
void reInt(int a)
{printf("void返回类型的函数的输出:%d\n",a);return; // 没有返回值
}
//void*返回类型的函数 返回int*
void* reIntp(int *a)
{printf("void*返回类型返回int*的函数的输出:%d\n", *a);return a; // 返回 int *
}
//void*返回类型的函数 返回char*
void* reChar(char* str)
{printf("void*返回类型返回char*的函数的输出:%s\n",str);return str;
}

输出

void返回类型的函数的输出:10
void*返回类型返回int*的函数的输出:10
void*返回类型返回char*的函数的输出:CSDN
主函数输出:10
主函数输出:CSDN
Press any key to continue

提醒:在主函数中接收void*返回值类型的函数返回的值时,需要对数据进行强制类型转换一下哦。

结论

 通过代码示例及输出,我们可以很清楚地感受到 void* 返回类型的函数的强大,能够返回任意类型的指针(int* ,char* ,float* 等等),但是一般情况下最好不要使用此返回类型哦~好啦,关于 void* 的基础讲解到这里就结束了。

感谢阅读,如有不懂或不对的地方欢迎在评论区留言~

void*作为函数返回类型(C语言)相关推荐

  1. c语言枚举如何当函数返回值,C语言学习五 — 数组与枚举

    数组 C 语言支持数组数据结构,它可以存储一个固定大小的相同类型元素的顺序集合.数组是用来存储一系列数据,但它往往被认为是一系列相同类型的变量. 数组的声明并不是声明一个个单独的变量,比如 numbe ...

  2. C++基础第6章:函数(2)——函数体、函数返回类型

    文章目录 1.函数体 2.函数返回类型 1.函数体 隐式返回:没有写return,常见的就是void函数.main函数是比较特殊的函数,所以他虽然是int main(),但是最后也可以不返回,也就是隐 ...

  3. void *作为函数形参类型

    编译报错,修改如下: 查看库函数中memcpy()函数:到安装位置去找. IAR for arm 没有给memcpy函数的源代码 IAR for 430 给出了 get: 1.查看库的方法,看库中的函 ...

  4. C语言 const 修饰函数返回值 - C语言零基础入门教程

    目录 一.const 简介 1.const 修饰变量 2.const 修饰指针 二.const 修饰在函数名前面 三.const 修饰在函数名后面 四.猜你喜欢 零基础 C/C++ 学习路线推荐 : ...

  5. 理解OpenCV中的宏定义 CVAPI(函数返回类型)

    图像处理开发需求.图像处理接私活挣零花钱,请加微信/QQ 2487872782 图像处理开发资料.图像处理技术交流请加QQ群,群号 271891601 读代码时看到语句 CVAPI(IplImage* ...

  6. ostream作为函数返回值_GO语言基础函数

    GO语言基础–函数 函数是组织好的.可重复使用的.用于执行指定任务的代码块.本文介绍了Go语言中函数的相关内容. 函数定义 Go语言中定义函数使用func关键字,具体格式如下: func 函数名(参数 ...

  7. c语言子函数返回值,C语言函数说明与返回值

    在学习C语言函数以前,我们需要了解什么是模块化程序设计方法. 人们在求解一个复杂问题时,通常采用的是逐步分解.分而治之的方法,也就是把一个大问题分解成若干个比较容易求解的小问题,然后分别求解.程序员在 ...

  8. c语言中自定义函数返回数组,C语言自定义函数返回数组的方法(图文详解)

    C语言自定义函数返回数组的方法(图文详解) 最近看到一些同学问题,有提到说:如何在一个函数中返回数组呢? 能否直接在自定义 函数中,写成char *类型返回值,直接返回呢?,代码如下: 直接返回str ...

  9. ostream作为函数返回值_Go语言入门必知教程-函数

    函数是为了执行特定任务而存在于程序内的一组语句,函数接受输入并返回输出. 函数允许将常用的代码块提取出来成为单个组件. 使用最广的Go函数是main(),每个独立的Go程序都必须有个main函数. 创 ...

最新文章

  1. new File(String Path)加载资源问题
  2. hdu 4945 2048(DP)
  3. SQL中除数为0处理情况演示
  4. Github上排名前五的开源网络监控工具
  5. bootice添加黑苹果引导_Clover(四叶草)引导多系统(Linux亦可),黑苹果引导教程
  6. 几种常用网络传输协议
  7. 鼎捷T100标准接口调用
  8. r语言 面板数据回归_在R语言中进行面板数据分析
  9. 计算机麦克风测试,如何进行电脑话筒测试?电脑麦克风如何设置?
  10. 金蝶K3工业单据中间层插件开发教程
  11. 安川ga700变频器故障码集_安川变频器故障代码和报警参数大全
  12. 【尚硅谷】Gradle教程入门到进阶(从gradle安装到项目实战)笔记
  13. 资料:《大学英语》精读修订版(全六册)原文及全文翻译
  14. “当前页面的脚本发生错误”如何解决
  15. Windows安全加固-账户管理和认证授权
  16. UVM糖果爱好者教程 - 31.provides_responses?
  17. 检测mysql字符正确_mysql字符集的测试
  18. 江苏专转本计算机第七章,2013江苏专转本 第七章 无穷级数.ppt
  19. Excel中数据透视表的使用(一)
  20. 物理专业要用的计算机语言,16岁被保送清华,本科毕业进麻省理工读博,现开发Taichi爆红网络...

热门文章

  1. JavaWeb:JavaWeb技术架构演进
  2. 云端存储数据的5大不安全因素,主要有哪些?
  3. slice和splice区别
  4. 各种透明玻璃厚度测量,双边对射厚度测量,玻璃测厚传感器
  5. 群发猫批量群发代投助力全渠道爆发式增长
  6. 全开源版求职招聘平台小程序源码 含搭建教程
  7. 椭圆相关函数图像的matlab实验报告
  8. 环球易购数据平台如何做到既提速又省钱?
  9. 中国最厉害的10大CEO简历曝光[ZT]
  10. VC快速强制退出程序方法