...
((void*myfunc)(255-4))();
...
这个指针语法正确么?

解决方案 »

  1.   

    myfunc函数入口向下偏移251字节后对应的函数被调用!
      

  2.   

    基本同意 syh_17(神探柯南)的说法-myfunc函数入口向下偏移251字节后对应的函数被调用。不过我觉得原((void*myfunc)(255-4))()似乎应该改为
    (void(*myfunc)(255-4))()
      

  3.   

    Bruce Eckel的<Thinking in cpp>一书中讲到了"右--左--右"原则,从变量名出发,往右走,再往左,循环往来分析.
    ((void * myfunc)(255-4))();
    从myfunc出发,往右碰到括号,回来,往左碰到星号,说明是一个指针.但再往右就不知道是什么概念了.如果是偏移应该有运算符啊.