请教C/C++高手们一个问题。函数返回一个指针来指向动态分配的50个浮点数组元素

#include<iostream>#include<stdlib.h>usingnamespacestd;//函数返回一个指针来指向动态分配的50个浮点数组元素。flo... #include <iostream>
#include <stdlib.h>
using namespace std;
//函数返回一个指针来指向动态分配的50个浮点数组元素。
float *get_mem(void)
{
float *ptr;

ptr=calloc(50,sizeof(float));
//error C2440: '=' : cannot convert from 'void *' to 'float *'
//书上是这样写的,可是这样明明不行。把float改为void吧,又失去了程序的本意。
//改成ptr=new float (50);可以运行,但不知道对不对。
if(!ptr)
{
cout<<"Allocation error\n";
exit(1);
}
return ptr;
}

int main()
{

get_mem();
return 0;
}
展开
 我来答
百度网友8759257
2007-07-29 · TA获得超过760个赞
知道小有建树答主
回答量:310
采纳率:0%
帮助的人:0
展开全部
ptr=(float *)calloc(50,sizeof(float));强制转换

ptr=new float[50];可以
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式