LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1179|回复: 5

一个关于局部变量的问题

[复制链接]
发表于 2003-3-18 08:31:15 | 显示全部楼层 |阅读模式
在fs/super.c中

int register_filesystem(struct file_sysytem_type *fs)
{
    int res=0;
    struct fule_system_type **p;
    if(!fs)
        return -EINVAL;
    if(fs->next)
        return _EBUSY;
    write_lock(&file_systems_lock);
    p=find_filesystem(fs->name);
    if(*p)
        res=_EBUSY;
    else
        *p=fs;//疑问:p不是局部变量马?在这个函数结束时就自动销毁了,那为什么还能实现注册文件系统的功能?
    write_unlock(&file_systems_lock);
    return res;
}
发表于 2003-3-18 22:19:06 | 显示全部楼层
还没人回答呀
我也想知道
发表于 2003-3-26 03:28:55 | 显示全部楼层
你没有注意到 p 是一个指针的指针呀。
 楼主| 发表于 2003-3-26 21:12:12 | 显示全部楼层
一个指针的指针就保留莫?
请楼上的详细说一下,谢谢:)
发表于 2003-3-28 12:56:20 | 显示全部楼层
对指针的操作表示对起指向结构的操作。
释放就释放了啊,但对它指向的地方的操作已经成功了的啊。
发表于 2003-3-30 13:32:00 | 显示全部楼层
经过 ykwj121 的解释,是不是明白了?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表