小编new*_*guy的帖子

将char**传递给函数

我将总结一下我的代码,因为它非常大.在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)

有人可以帮忙吗?

c pointers char

-1
推荐指数
1
解决办法
865
查看次数

标签 统计

c ×1

char ×1

pointers ×1