home *** CD-ROM | disk | FTP | other *** search
/ Frostbyte's 1980s DOS Shareware Collection / floppyshareware.zip / floppyshareware / GLEN / MC20.ZIP / FEATURES.DOC < prev    next >
Text File  |  1990-08-20  |  4KB  |  85 lines

  1.    
  2.                             *** MICRO-C Features ***
  3.    
  4.    
  5.    
  6.        -   Very easy to port, not tied to any processor architecture.
  7.    
  8.        -   Lots of documentation (>200 pages) and example programs.
  9.            Includes detailed information on porting the compiler.
  10.    
  11.        -   Includes built-in and external pre-processors.
  12.    
  13.        -   Includes post-processor optimizer for even better performance.
  14.    
  15.        -   Over 130 library functions supplied (IBM PC version).
  16.    
  17.        -   All source code for compiler, libraries and utilities is included.
  18.    
  19.        -   Includes code generators for: 8080/8085/Z80, 80x86, 6809, 68HC11
  20.    
  21.        -   80x86 implementation is MASM compatible and supports both the TINY
  22.            and SMALL memory models.
  23.    
  24.        -   More complete implementation, more efficent code produced,
  25.            and faster compilation than most other "SMALL-C" compilers.
  26.                         *** MICRO-C Language Summary ***
  27.    
  28.        It does support:
  29.    
  30.            - All 'C' statements:
  31.                if/else     while   do/while    for     break   continue
  32.                return      goto    switch/case/default {}      ;
  33.    
  34.            - All 'C' operators:
  35.              (Except structure reference: . and ->)
  36.                +   -   *   /   %   &   |   ^   <<  >>  >   <   ==  ~
  37.                +=  -=  *=  /=  %=  &=  |=  ^=  <<= >>= >=  <=  !=  !
  38.                ++  --  ?:  ,   ()  []
  39.              (++ and -- may be pre or post)
  40.              ( * and &  also perform INDIRECTION and ADDRESS OF)
  41.    
  42.            - The following data types (with no restrictions):
  43.                int         char        unsigned    (incl: unsigned char)
  44.                extern      static      register
  45.                    - pointers to any type (including pointers)
  46.                    - Arrays of any type (including pointers)
  47.                    - Function can return any type (incl. pointers)
  48.                    - Typecast of value to above types
  49.    
  50.            - Multi-dimensional arrays.
  51.    
  52.            - Decimal, Octal and Hex constants
  53.                eg: 127, 0177, 0x7f
  54.    
  55.            - Inline assembly code
  56.    
  57.            - Full support for strings and character constants: ('' "")
  58.                Including:  \n      Newline
  59.                            \r      Carriage return
  60.                            \t      Horizontal tab
  61.                            \b      Backspace
  62.                            \f      Formfeed
  63.                            \177    Octal constants
  64.                            \x7f    Hexidecimal constants
  65.              (16 bit character constants are supported. eg: 'ab')
  66.    
  67.            - Fairly complete preprocessor
  68.              - Integral pre-processor is very FAST and supports
  69.                  #define       (non-parameterized)
  70.                  #include
  71.                  #ifdef/#ifndef/#else/#endif (single level)
  72.                  #asm/#endasm
  73.              - External pre-processor supports:
  74.                  #define       (fully parameterized)
  75.                  #undef
  76.                  #forget       (multi undef -similar to forth forget)
  77.                  #include      (with <> library support)
  78.                  #ifdef/#ifndef/#else/#endif   (fully nested)
  79.                  #asm/#endasm  (passed through & handled by integral)
  80.    
  81.        It does not support:
  82.    
  83.            - Structures and Unions, Typedef, Long / Double / Float and
  84.              Enumerated data types, Bit fields.
  85.