CFITSIO uses plug-in I/O drivers (developed at the ISDC) which makes it
easy to to support a variety of physical file formats, including:

IRAF images (code provided by Doug Mink)

raw binary data files

FTP, HTTP, and ROOT file access (code provided by ISDC)

externally compressed files (.gz, .Z, and .zip)

files piped on 'stdin' or 'stdout'

'Tile Compressed' images which are actually stored in binary tables

files in shared memory segments (code provide by ISDC)

files is core memory (widely used in real-time data acquisition)

Has a simple set of self-contained WCS routines, plus has routines to
cleanly interface with other extensive WCS library
(but has no linkage dependency on other WCS libraries)

The high performance lexical parser (designed by Uwe Lammers) allows
completely general table filtering and is as fast as compiled C code.

The parser supports filtering of tables by region files and GTI files.

CFITSIO's Virtual File syntax supports many features, including:

performing on-the-fly arithmetic on the value of image pixels

extracting subimages from larger images

modifying or creating table columns on the fly

creating images by binning table columns

The I/O speed has been highly optimized and is largely limited only
by the speed of the underlying physical device; Sustained I/O data rates
of more than 40MB/s are possible on current generation magnetic disks.

Has modest memory requirements; FITS files sizes are not limited by the
amount of available memory.

Supports the 'large file' specification and can read and write FITS files
up to 6 terabytes in size.

Extensive error reporting is built into the interface, which aids both
developers and end users in debugging problems.

CFITSIO can be built on nearly every Unix platform with the usual
'./configure' and 'make' procedure. It supports 64-bit architectures.