C++ void*作为函数返回值

最近的工作中需要用到以void* 作为函数返回值实现某些输出,但很久没有用了,于是复习了一下,顺便再记录下来以加强记忆与理解。
首先复习一下void类型,oid类型即空类型,void常见用法是:
1.void作为函数返回值类型,表示该函数没有任何返回值,运行程序后只执行函数内的代码。
2.函数形参列表只写一个void,表明该函数是没有参数的 。

而void*指针指向空类型或指向不确定的类型。

void*作为函数返回值时能够接收任意类型的指针。

在具体使用函数时,还可指定返回值类型,例子如下:

void* fun(int a) {
    return &a;
}

运行代码测试一下,

int a1 = 99;
int* ap = (int*)fun(a1);
std::cout << ap << std::endl;

输出为输入变量的地址。

除此之外,我们还可以为指定返回值指定不同的类型,上面代码稍微修改一下:

int a1 = 99;
float* ap = (float*)fun(a1);
std::cout << ap << std::endl;

个人理解其实就相当于对目标变量指针的类型做了个转换。

你可能感兴趣的:(c++)