注册 登录
编程论坛 C语言论坛

关于这个问题怎么实现。。?想不出来

gsmoking 发布于 2019-12-19 14:36, 884 次点击
只有本站会员才能查看附件,请 登录
4 回复
#2
rjsp2019-12-19 14:56
不可能的吧
x: ((struct x*)x)->x = x(5);
这里面有三个独立的x,第一个是 label,第二个是 变量,第三个是 函数,同一级别,怎么保证不冲突?
#3
rjsp2019-12-19 15:16
只能当成 宏 了
程序代码:
int main( void )
{
    struct x {
        int x;
    } obj;
    void* x = &obj;
    #define x(n) 0

    goto x;
    x: ((struct x*)x)->x = x(5);
}

#4
gsmoking2019-12-19 15:17
回复 2楼 rjsp
这题目是从讲c库里面的,如果函数声明和变量分开可以实现吗?
#5
gsmoking2019-12-19 15:22
回复 3楼 rjsp
学习了,非常感谢
1