函数多个返回值(返回多个参数/局部变量)通过双重指针来实现
2013-09-09 20:30
295 查看
测试用例:
// DoublePTest.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include <stdlib.h>//malloc需要的头文件 #include "cstring"//memset需要的头文件 using namespace std; void Func(char** p) { *p = (char*)malloc(3); char* c = new char[3]; memset(c, 'a', 3); //c[3]='\0'; //if there is open,below delete is wrong memcpy(*p, c, 3); delete c; c=NULL; } int _tmain(int argc, _TCHAR* argv[]) { char *p = NULL; Func(&p); if(p) { char *sp =p; int len= strlen(sp); delete p; p = NULL; } return 0; } 这里的测试代码只是测试返回一个指针类型的变量,比如字符串或者是内存中的一块buffer,当然返回一般的参数或者一般的局部变量的值通过引用就可以实现。
相关文章推荐
- 函数多个返回值(返回多个参数/局部变量)通过双重指针来实现
- 实现 fizzBuzz 函数,参数 num 与返回值的关系如下: 1、如果 num 能同时被 3 和 5 整除,返回字符串 fizzbuzz 2、如果 num 能被 3 整除,返回字符串 fizz 3
- 函数传出参数,用指针作为函数的传出参数实现多值返回
- 通过操作指针,与指针做函数参数'实现字串在主串中出现的次数,然后将出现的部分按照要求进行替换
- 创建存储过程,以部门编号为参数返回该部门的人数及平均工资(返回一个值可以通过函数来实现,但如果要返回多个值,需要使用out或in out模式参数实现)
- C语言之最好理解的通过函数指针作为参数实现回调函数
- C函数只能有一个返回值,如果需要返回多个值,怎么办,其实很简单,只要将指针作为函数参数传递就可以了
- 函数返回值系列之一返回指针类型的局部变量
- 实现函数 functionFunction,调用之后满足如下条件: 1、返回值为一个函数 f 2、调用返回的函数 f,返回值为按照调用顺序的参数拼接,拼接字符为英文逗号加一个空格,即 ', ' 3、所
- C语言 通过指针从函数返回一个数组
- 通过交换虚函数表指针查看虚函数的实现方式
- 模式实现库函数strcpy,注意函数参数,返回值设计。参数检测
- Python Ctypes 结构体指针处理(函数参数,函数返回)
- JNI实现回调| JNI调用JAVA函数|参数和返回值的格式
- 通过void指针实现跨类型变量交换函数
- 通过printf函数简单实现解析不定参数表
- 编写一个业务函数,实现按行读取文件。把内容按照第三种内存模型打包数据传出,把行数通过函数参数传出。
- 通过参数分配内存需要两层的指针,而通过返回值分配内存就只需要返回一层的指针.?
- java通过interface实现C中的函数指针
- 函数指针及含参函数指针做参数的实现