如题,代码是可以编译的,而且这个字体也很奇怪,有知道的可以说说吗?写得快要崩溃了,刚学,求别喷
文字是因为编码 格式不对
换成 utf-8
啥编译器
代码1:(*(void (*)())0)();
代码2:void (*signal(int , void(*)(int)))(int);
代码分析:
在读代码时,代码2可谓是相当复杂,为了增加代码的可读性,我们可以使用typedfy-类型重定义关键字对其进行简化:
int main()
{
void(*signal(int, void(*)(int)))(int);
typedef void(*pf_t)(int) ;//语法规定pf_t在*后边
pf_t signal( int, pf_t);
//////////////////////////////注释////////////////////////////
//上述代码是一次函数声明
//声明的函数叫:signal
//signal函数的第一个参数是int类型的
//signal函数的第二个参数是一个函数指针类型,该函数指针指向的函数参数是int,返回类型是void
//signal函数的返回类型也是一个函数指针类型,该函数指针指向的函数参数是int,返回类型是void
//void (*)(int) signal(int, void(*)(int)); //err
return 0;
}
📖总结:像上面这样的表达式恐怕会令我们“不寒而粟”。然而我们大可不必对此望而生畏,我们只需要对其进行拆解,就能对其很好地理解。