【发布时间】:2011-03-12 23:56:51
【问题描述】:
我正在尝试从函数参数返回数据指针:
bool dosomething(char *data){
int datasize = 100;
data = (char *)malloc(datasize);
// here data address = 10968998
return 1;
}
但是当我以如下方式调用函数时,数据地址变为零:
char *data = NULL;
if(dosomething(data)){
// here data address = 0 ! (should be 10968998)
}
我做错了什么?
【问题讨论】:
-
你真的在使用 C 还是在使用 C++(一些 cmets 表示你在谈论 C++ 引用)。
-
我没有将其标记为 c++,因为我不知道这很重要,而且人们经常抱怨“那不是 c++ 那是 c”,因为我正在使用 malloc()...