home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Frostbyte's 1980s DOS Shareware Collection
/
floppyshareware.zip
/
floppyshareware
/
GLEN
/
MC20.ZIP
/
FEATURES.DOC
< prev
next >
Wrap
Text File
|
1990-08-20
|
4KB
|
85 lines
*** MICRO-C Features ***
- Very easy to port, not tied to any processor architecture.
- Lots of documentation (>200 pages) and example programs.
Includes detailed information on porting the compiler.
- Includes built-in and external pre-processors.
- Includes post-processor optimizer for even better performance.
- Over 130 library functions supplied (IBM PC version).
- All source code for compiler, libraries and utilities is included.
- Includes code generators for: 8080/8085/Z80, 80x86, 6809, 68HC11
- 80x86 implementation is MASM compatible and supports both the TINY
and SMALL memory models.
- More complete implementation, more efficent code produced,
and faster compilation than most other "SMALL-C" compilers.
*** MICRO-C Language Summary ***
It does support:
- All 'C' statements:
if/else while do/while for break continue
return goto switch/case/default {} ;
- All 'C' operators:
(Except structure reference: . and ->)
+ - * / % & | ^ << >> > < == ~
+= -= *= /= %= &= |= ^= <<= >>= >= <= != !
++ -- ?: , () []
(++ and -- may be pre or post)
( * and & also perform INDIRECTION and ADDRESS OF)
- The following data types (with no restrictions):
int char unsigned (incl: unsigned char)
extern static register
- pointers to any type (including pointers)
- Arrays of any type (including pointers)
- Function can return any type (incl. pointers)
- Typecast of value to above types
- Multi-dimensional arrays.
- Decimal, Octal and Hex constants
eg: 127, 0177, 0x7f
- Inline assembly code
- Full support for strings and character constants: ('' "")
Including: \n Newline
\r Carriage return
\t Horizontal tab
\b Backspace
\f Formfeed
\177 Octal constants
\x7f Hexidecimal constants
(16 bit character constants are supported. eg: 'ab')
- Fairly complete preprocessor
- Integral pre-processor is very FAST and supports
#define (non-parameterized)
#include
#ifdef/#ifndef/#else/#endif (single level)
#asm/#endasm
- External pre-processor supports:
#define (fully parameterized)
#undef
#forget (multi undef -similar to forth forget)
#include (with <> library support)
#ifdef/#ifndef/#else/#endif (fully nested)
#asm/#endasm (passed through & handled by integral)
It does not support:
- Structures and Unions, Typedef, Long / Double / Float and
Enumerated data types, Bit fields.