C语言中,一个函数最多只能实现一个返回值。

int func (int b)
{  int a=5;  if (a>b)  return a;  else  return b;  return  0;
}  

通过在函数中使用返回语句,返回一个值给函数,同时终止函数的调用,返回主函数。

而在实际操作过程中,我们需要调用一个函数,实现得出几个不同结果的情况。

(1)函数返回一个数组,然后再解析数组中的每个数值的意思。

(2)指针作为参数,承载所要输出的值。

#include<stdio.h>#define IN
#define OUTint volume_func(IN int length,IN int width,IN int heigh,OUT int *area_pr)
{*area_pr = 2 * (length*width + width*heigh + heigh*length) ;return (length*width*heigh);
}
int main(int argc,char *argv[])
{int x=2,y=3,z=4 ;int area ;int volume = volume_func(x,y,z,&area);printf("volume:%d,area:%d\n",volume,area);return 0 ;
}

在这里调用一次函数得到来个值,即area和volume。注意函数中形式。

意外收获:定义宏IN,OUT来说明每个参数是输入参数还是输出参数,形同硬件的应用。

在VC++有许多这种方法的应用:

#include <stdlib.h>
long strtol( const char *start, char **end, int base );

**end是指向指针的指针

功能:函数返回带符号的字符串start所表示的长整型数。参数base代表采用的进制方式。指针end 指向start所表示的整型数之后的部分。如果返回值无法用长整型表示,函数则返回LONG_MAXLONG_MIN. 错误发生时,返回零。

#include<stdio.h>
#include<stdlib.h>int main()
{char* p = NULL;long n3 = strtol("129gg", &p, 8);   // n3 = 10printf("%d\n%s\n",n3,p);return 0;
}

在这里将“129gg”中数字认为是八进制,则012,十进制输出为10,p指向“9gg”

C函数实现返回多个值的方法相关推荐

  1. 从函数中返回多个值的方法

    There are several ways to return multiple values from functions. In this topic, we're going to look ...

  2. java map 多个值_java 一个函数EnumMap返回多个值

    在开发过程中,经常会有这种情况,就是一个函数需要返回多个值,这是一个问题!! 网上这个问题的解决方法: 1.使用map返回值:这个方法问题是,你并不知道如何返回值的key是什么,只能通过doc或者通过 ...

  3. Python函数返回多个值的方法

    如果程序需要有多个返回值,则既可将多个值包装成列表之后返回,也可直接返回多个值.如果 Python 函数直接返回多个值,Python 会自动将多个返回值封装成元组. 如下程序示范了函数直接返回多个值的 ...

  4. c语言 电梯调度,c语言函数如何返回两个值或多个值(结合 小飞 电梯调度算法)...

    正常思维:使用return 语句,但每调用一次函数 return 语句只能返回一个值 .这是C语言语法规则. 该怎么实现一个函数返回两个值或是多个值?,可以采用"间接方法".大概有 ...

  5. mysql存储过程返回多个值_数据库mysql存储过程之返回多个值的方法示例

    本文实例讲述了mysql存储过程之返回多个值的方法.分享给大家供大家参考,具体如下: mysql存储函数只返回一个值.要开发返回多个值的存储过程,需要使用带有INOUT或OUT参数的存储过程.咱们先来 ...

  6. bash shell函数中返回任意值的四种方法

    From: http://www.jbxue.com/article/11322.html 本文介绍下,在bash shell编程中,从函数中返回任意值的几种方法,有需要的朋友参考下. 在bash中, ...

  7. 初学python--空函数、返回多个值

    空函数 def function():pass 返回多个值,用tuple(元组)来承接 定义函数时,需要确定函数名和参数个数: 如果有必要,可以先对参数的数据类型做检查: 函数体内部可以用return ...

  8. python自定义函数中return可以返回多个值_python函数return返回多个值

    在函数中一旦使用return,那么函数就会停止往下执行!但是,我们有时候需要函数返回多个值,怎么实现呢?其实python的return可以返回多个值,而且Python 会自动将多个返回值封装成元组. ...

  9. crc32函数python,python求crc32值的方法

    本文实例讲述了python求crc32值的方法.分享给大家供大家参考.具体实现方法如下: 要想求CRC值,前面要import binascii binascii.crc32(v) 求出了v的crc32 ...

最新文章

  1. Linux 下的动态库、静态库与环境变量
  2. html图片怎么设置行高,html行高怎么设置
  3. 中国在线度假旅游市场专题分析2020
  4. 今日恐慌与贪婪指数为61 贪婪程度有所缓解
  5. c语言123 u0010%10,mbsrtowcs_s
  6. 23 android多线程
  7. java所有代码都需要编译吗_为什么要编译此Java代码?
  8. java实现飞机大战小游戏(源码+注释)
  9. 谷歌浏览器Chrome显示乱码怎么办?
  10. 错误:Error:java.lang.RuntimeException: Some file crunching failed, see logs for details解决方案
  11. 不能访问网络位置的解决方法(转)
  12. IP地址冲突的原因及其解决方法
  13. ae正在发生崩溃_本专业人才懂的梗 “pr未响应 ae正在发生崩溃”
  14. android+清除循环动画,android自定义View之(4)-一键清除动画
  15. ArcGIS使用(一)创建ArcGIS应用
  16. 计算机组成原理数据线引脚,计算机组成原理复习题及问题详解.doc
  17. where和which的区别【定于从句】
  18. 钉钉群机器人定时发送消息并@所有人
  19. 容器监控之cadvisor介绍
  20. XP中i386/lang的文件夹下载

热门文章

  1. tensorflow 如何获取模型中想要的张量
  2. SpringMVC默认访问路径配置
  3. c语言双链表排序交换节点_图解:单链表翻转的三种方式!
  4. 串行口方式二 波特率_一文就能看懂“串口通讯”的概念、3个通讯方式、9大注意事项...
  5. JAVA入门级教学之(内存中的空指针异常)
  6. android开发适配深色模式,手机不支持深色模式,如何用软件解决深色模式的问题?(附有系统全局深色模式实现方法...
  7. python 3.7.732位安装步骤_Python3.7安装pyaudio教程解析
  8. Java文件路径及文件名乱码_javaweb文件下载及文件名中文乱码处理
  9. python输入float_python – 在tensorflow中创建一个float64变量
  10. 开发转测试没人要_新人如何快速的进入融入软件测试行业?