首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何将void函数中的值返回给C中的main函数?

在C语言中,void函数表示没有返回值的函数。但是有时候我们需要将void函数中的值返回给main函数,可以通过指针参数来实现。

具体步骤如下:

  1. 在void函数中定义一个指针变量,用于存储要返回的值。
  2. 将要返回的值赋给指针变量。
  3. 在void函数的参数列表中添加一个指向指针变量的指针。
  4. 在main函数中声明一个与指针变量类型相同的变量,并将指向指针变量的指针作为参数传递给void函数。
  5. 在main函数中通过解引用指针的方式获取返回的值。

下面是一个示例代码:

代码语言:txt
复制
#include <stdio.h>

void getValue(int* result) {
    int value = 10;
    *result = value; // 将value的值赋给指针变量result所指向的内存地址
}

int main() {
    int result;
    getValue(&result); // 将result的地址传递给void函数
    printf("返回的值为:%d\n", result);
    return 0;
}

在上面的代码中,void函数getValue接受一个指向int类型的指针作为参数,将value的值赋给result所指向的内存地址。在main函数中,声明一个int类型的变量result,并将其地址传递给getValue函数。最后通过解引用指针的方式获取返回的值,并打印输出。

这种方式可以实现将void函数中的值返回给main函数,通过指针参数传递数据,实现了函数间的数据交互。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Cmain函数几种写法

大家好,又见面了,我是你们朋友全栈君。 1、最标准写法 #include int main() { printf("Hello World!..."); return 0; } 2、把int 换成void #include void main() { printf("Hello World!..."); return 0; } 3、不写int #include main() { printf("Hello World!...多种写法不报错原因 C语言最早时候只是一种规范和标准(例如C89, C11等) 标准推行需要各大厂商支持和实施 而在支持实施时候由于各大厂商利益、理解等问题,导致了实施标准不同,发生了变化...Turbo C Visual C(VC) GNU C(GCC) 所以大家才会看到不同书上书写格式有所不同, 有的返回int,有的返回void,有的甚至没有返回 发布者:全栈程序员栈长,转载请注明出处

60120

python函数返回详解

1.返回介绍 现实生活场景: 我儿子10块钱,让他给我买包烟。...这个例子,10块钱是我儿子,就相当于调用函数时传递到参数,让儿子买烟这个事情最终目标是,让他把烟给你带回来然后给你对么,,,此时烟就是返回 开发场景: 定义了一个函数,完成了获取室内温度,...想一想是不是应该把这个结果调用者,只有调用者拥有了这个返回,才能够根据当前温度做适当调整 综上所述: 所谓“返回”,就是程序函数完成一件事情后,最后调用者结果 2.带有返回函数 想要在函数把结果返回调用者....保存函数返回 在本小节刚开始时候,说过“买烟”例子,最后儿子给你烟时,你一定是从儿子手中接过来 对么,程序也是如此,如果一个函数返回了一个数据,那么想要用这个数据,那么就需要保存 保存函数返回示例如下...5.在python我们可不可以返回多个

3.3K20
  • 关于java main函数

    我们刚开始写java 程序最常见除了System.out.println( );之外应该就是 public static void main( String arg[ ] ){ …… }了。...我们通常称之为主函数或者main函数。公共和静态就不用说了,这是java程序一个入口,而String args [ ]里面是一些命令参数。...一点解释: 其中main()是一个前台线程,前台进程是程序必须执行完成,而后台线程则是java中所有前台结束后结束,不管有没有完成,后台线程主要用与内存分配等方面。...后台线程用于处理时间较短任务,如在一个Web服务器可以利用后台线程来处理客户端发过来请求信息。...前台线程一般用于处理需要长时间等待任务,如在Web服务器监听客户端请求程序,或是定时对某些系统资源进行扫描 程序。

    1.9K20

    C++关于main函数几点说明

    main函数C++程序入口函数C++标准要求main()函数返回类型为int。...其他返回类型不是void函数,如果没有使用return语句,编译器将报错。...3.Windows平台,可通过环境变量errorlevel获取C++应用程序main函数返回 依据返回作出不同响应。编写如下程序。...运行截图如下: image.png 这个实验说明了程序main.exe运行时,main()函数返回被存放在环境变量errorlevel,我们可以在批处理文件利用这个返回采用去不同行动...exit用于结束进程,返回进程结束代码操作系统,return用于结束函数调用,返回函数结束代码调用者。在main()函数,return和exit均可达到结束程序,返回结果操作系统。

    98820

    C++函数如何返回多个

    本文介绍在C++语言中,使用一个函数,并返回两个及以上、同类型或不同类型返回具体方法。   ...对于C++语言而言,其不能像Python等语言一样在一个函数返回多个返回;但是我们也会经常遇到需要返回两个甚至更多个需求。...首先,我们需要将C++函数类型定义为pair,其中内为两个返回各自数据类型。...至此,我们即实现了通过一个C++函数返回两个返回方法。   如果需要返回三个或更多返回,则可以基于tuple(元组)这一数据结构,用类似于上述操作方法来实现。...举一个例子,假如我们想通过一个函数返回三个返回,就需要将前述代码函数类型定义为tuple,将make_pair()函数更改为make_tuple(),且在调用函数时首先将返回一个

    35210

    Linuxsystem函数返回详解

    描述 system()库函数使用fork(2)创建一个子进程,该子进程使用execl(3)执行指定shell命令, execl("/bin/sh", “sh”, “-c”, command,...如果子进程无法创建,或者其状态不能被检索,则返回为-1; 如果在子进程不能执行一个shell,或shell未正常结束,返回被写入到status低8~15比特位;一般为127 如果所有系统调用都成功..., 将shell返回填到status低8~15比特位 系统宏 系统中提供了两个宏WIFEXITED(status)、WEXITSTATUS(status)判断shell返回 WIFEXITED...(status) 用来指出子进程是否为正常退出,如果是,它会返回一个非零 WEXITSTATUS(status) 用来获取返回status低8~15数据 有了这两个宏代码就简介很多,...命令是否正确执行 Linux system函数返回 父进程等待子进程终止 wait, WIFEXITED, WEXITSTATUS

    11.3K30

    函数基础,函数返回,函数调用3方式,形参与实参

    5.29自我总结 一.函数基础 1.什么是函数 在程序,函数是具有种功能功能工具 2.函数两个阶段 1.函数定义 a)有参函数定义 在函数定义阶段括号内有参数,称为有参函数。...param1:描述 :param2:描述 :return:返回 #return除了返回作用还结束进程作用,不会再接着往下运行 #定义时候def内代码块他只会检测代码语法...() c)空函数调用 func() 二.函数返回函数返回: 如 def Than_the_size(num_1,num_2): if num_1>num_2: print...(num_1) else: print(num_2) print(Than_the_size(3,2)) #这时我们终端看到是None应为我们没有返回,print打印只是终端看并没有返回函数...,但是只能返回一个 else: return num_2 print(Than_the_size(3,2)) #这时候我们看到返回是3,return是把返还给函数并且停止函数下面的运行

    2.1K20

    C++函数指针、指针函数返回函数指针函数浅谈

    C++函数指针、指针函数返回函数指针函数浅谈 引言 函数指针、指针函数C重要而容易混淆概念,博主将通过两个实例来说明这两个截然不同概念。...先给一个例子: /* *本例是SGISTL源码一个函数,比普通返回函数指针函数要更复杂一点 *因为本例函数参数也是一个函数指针 */ void (* set_malloc_handler...(void (*f)()))() 我们把例子从里往外看 void (*f)()是一个函数指针,它用于指向一个返回void,无参数列表函数 * set_malloc_handler(void (...*f)())这是一个指针函数返回为指针,它有一个参数,参数为一个函数指针(返回void,无参数列表函数void (* set_malloc_handler(void (*f)()))()...这是一个指针函数返回函数指针(返回void,无参数列表一个函数),它有一个参数,参数为一个函数指针 发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/152178

    1.6K10

    箭头函数this

    其实那只是其中一个因素,还有一个因素就是在ZnHobbies方法this已经不属于上一个区块,而这里this并没有name。...所以 解决办法其中一个就是在ZnHobbies函数写入 var that = this; 然后将this替换成that,所以输出结果,就有了lucifer名字啦。...还有的一个办法就是将ZnHobbies函数map改写成箭头函数: ZnHobbies: function () { this.hobbies.map((hobby)=...为什么箭头函数可以达到这样效果呢?是因为箭头函数没有它自己'this'。它this是继承于它父作用域。...所以它不会随着调用方法改变而改变,所以这里this就指向它父级作用域,而上一个this指向是Lucifer这个Object。所以我们就能准确得到Lucifername啦。

    2.2K20

    JS函数本质,定义、调用,以及函数参数和返回

    要用面向对象方式去编程,而不要用面向过程方式去编程 ---- 对象是各种类型数据集合,可以是数字、字符串、数组、函数、对象…… 对象内容以键值对方式进行存储 对象要赋值一个变量...(fn,1000);//此处需要传函数本体 //此处不能加括号,如果加了括号,会立刻调用,而不是等到1秒之后 函数可以作为返回使用: function fn(){ return function(){...,外层不能访问里层函数 代码块定义函数: 由于js没有块级作用域,所以依然是处于全局作用域中 都会出现预解析函数被提前声明 if(true){ function fn1(){ } }...operation对象 //就需要添加return this 构造函数调用: 构造函数命名时一般首字母大写 调用时用new+函数名,返回是一个对象 function Person(){ } var...回调函数,如 setTimeout(fn, time); ---- 函数返回 return: 表示函数结束 将返回 什么可以做返回: 直接return ,返回是undefined 数字 字符串

    17.6K20

    golang 函数使用返回与指针返回区别,底层原理分析

    变量内存分配与回收 堆与栈区别 变量内存分配逃逸分析 检查该变量是在栈上分配还是堆上分配 函数内变量在堆上分配一些 case 函数使用与指针返回时性能差异 其他一些使用经验 总结 变量内存分配与回收...一提是传统 c/c++ 代码需要手动处理内存分配和释放,而在 Go 语言中,有垃圾回收器来回收堆上内存,所以程序员只管申请内存,而不用管内存释放,大大降低了程序员心智负担,这不光是提高了程序员生产力...栈 函数调用栈简称栈,在程序运行过程,不管是函数执行还是函数调用,栈都起着非常重要作用,它主要被用来: 保存函数局部变量; 向被调用函数传递参数; 返回函数返回; 保存函数返回地址,返回地址是指从被调用函数返回后调用者应该继续执行指令地址...: in() escapes to heap 函数使用与指针返回时性能差异 上文介绍了 Go 变量内存分配方式,通过上文可以知道在函数定义变量并使用返回时,该变量会在栈上分配内存,函数返回时会拷贝整个对象...那在函数返回时是使用还是指针,哪种效率更高呢,虽然有拷贝操作,但是返回指针会将变量分配在堆上,堆上变量分配以及回收也会有较大开销。

    5.3K40

    C语言main函数解析

    void main() 有一些书上,都使用了void main( ) ,其实这是错误C/C++ 从来没有定义过void main( ) 。...has been C++, nor has it even been C.”这可能是因为 在 CC++ ,不接收任何参数也不返回任何信息函数原型为“void foo(void);”。...main 函数返回应该定义为 int 类型,CC++ 标准中都是这样规定。...在C99,标准要求编译器至少 main() 这种用法来个警告,而在c89这种写法是被允许。但为了程序规范性和可读性,还是应该明确指出返回类型。...当然参数传递还可以有其他方式,在下一节,会单独来讲。 main 函数返回类型必须是 int ,这样返回才能传递给程序调用者(如操作系统),等同于 exit(0),来判断函数执行结果。

    2.6K88

    函数变量+返回

    函数变量: 局部变量 和 全局变量 Python任何变量都有特定作用域 在函数定义变量一般只能在该函数内部使用,这些只能在程序特定部分使用变量我们称之为局部变量 在一个文件顶部定义变量可供文件任何函数调用...,这些可以为整个程序所使用变量称为全局变量 (1)、局部函数: #!.../usr/bin/python x= 200 def fun(): x = 11 y = 1 print locals() ##以字典形式返回变量 fun()...输出结果: {'y': 1, 'x': 11} 函数返回函数被调用后会返回一个指定 函数调用后默认返回None 指定return 来返回一个 返回可以是任意类型 一旦return执行后...设计一个函数,接收一个英文单词,从文件查询该单词汉语意思并返回

    4.9K40
    领券