指针保持正确的地址但没有打印值?

时间:2018-07-13 02:56:04

标签: c

我正在尝试创建一个允许我向用户询问文件的功能。当我尝试使用“%p”打印地址时,fileGot,Buffer和* userFileNameInput都存储了相同的地址。但是,当我尝试验证main函数中的值时,指针为NULL。有人可以帮忙解释一下为什么会这样吗,还有什么比这更好的方法了?

int main()
{

    char *fileGot;
    fileGetter( &fileGot );
    printf("filegot: %s\n" , fileGot);

    return 0;
}

void fileGetter( char **userFileNameInput )
{

    char buffer[100];
    *userFileNameInput = buffer;
    printf("enter file: \n");
    scanf("%s" , buffer);
}

0 个答案:

没有答案