我将总结一下我的代码,因为它非常大.在main我有这样的:
int main() {
char **name_ptr;
int ret = get_name(name_ptr);
if(ret == 1)
printf("main: %s\n", *name_ptr);
}
Run Code Online (Sandbox Code Playgroud)
在函数中get_name,我有这个:
int get_name(char **name) {
char buffer[30];
name = malloc(sizeof(char **));
*name = &buffer[0];
printf("get_name: %s\n", *name);
return 1;
}
Run Code Online (Sandbox Code Playgroud)
缓冲区来自tcp连接及其正确,这是一个字符串"the_name".
我的输出是
get_name: the_name
main: ??i?
Run Code Online (Sandbox Code Playgroud)
有人可以帮忙吗?