CPU类型和宏定义

来源:互联网 发布:法语自学软件app 编辑:程序博客网 时间:2024/04/30 19:45
//========================================================================
//TITLE:
//    CPU类型和宏定义
//AUTHOR:
//    norains
//DATE:
//    Saturday  18-August-2007
//Environment:
//        EVC4.0 + Windows CE 5.0 Standard SDK
//        EVC4.0 + Windows CE 4.2 Standard SDK
//========================================================================
    相信很多人都有这么一个经历,想宏定义某一个值,而这个值随着编译器选择的CPU不同而有所不同,但却苦于文档中没有关于CPU宏的说明.所以很多朋友的做法往往做法是自定以多个宏用来区分CPU的类型.其实大可不必,编译器在CPU不同时确实定义了相应的宏,只不过这个在文档中没有说明而已.
    
    CPU Type      Macro
     x86                _X86_
     mips             _MIPS_
     arm               _ARM_
     sh3               _SH3_
     
     
   根据不同的CPU定义不同的宏数值,代码可如此书写:
   
   #ifdef _X86_
     #define REG_NUM  8
   #endif
   
   #ifdef _MIPS_
     #define REG_NUM  12
   #endif
   
   
   其实最为实用的,还是根据不同的CPU类型选择不同的lib库链接,例如:
   
   #ifdef _X86_
     #pragma comment (lib,".//lib//X86em//Strmiids.lib")
   #endif
   
   #ifdef _MIPS_
     #pragma comment (lib,".//lib//MIPSII//Strmiids.lib")
   #endif
原创粉丝点击