问大家一个问题,我刚学VC,对以下语法不理解:
  #ifdef_MAC
  extern "c" int PASCAL
  #else
  extern "c" int WINAPI
  #endif这样的语法教科书上没介绍啊,大家知道是什么意思吗?

解决方案 »

  1.   

    预编译指令,就是如果定义_MAC这个标号,  extern "c" int PASCAL这一行就起作用,否则extern "c" int WINAPI起作用。
      

  2.   

    如果声明了_MAC宏,就以PASCAL的方式进行函数转换,否则以WINAPI的方式进行函数转换
      

  3.   

    _MAC是什么意思?
    PASCAL 方式是什么?
    WINAPI 方式又是什么?
    二者有什么区别吗?
      

  4.   

    _MAC是个符号,具体意义有制定者来解释,这里望文生义,假定为了在MAC机环境下编译;
    PASCAL和WINAPI是定义了函数参数入栈方式,二者顺序是反的。
      

  5.   

    http://blog.csdn.net/orbit/
    有一篇名为“函数调用约定和名称修饰”的文章,讲的就是这方面的内容