The CINT C/C++ Interpreter


  • CINT is a C/C++ interpreter which is aimed at processing C/C++ scripts. Scripts are programs which perform specific tasks. Generally execution time is not critical, but rapid development is. Using an interpreter the compile and link cycle is dramatically reduced facilitating rapid development. CINT makes C/C++ programming enjoyable even for part-time programmers.

  • CINT covers about 95% of ANSI C and 85% of C++. CINT, written in ANSI C (about 80000 loc), is solid enough to interpret itself and let the interpreted version execute a program. A CINT script can call compiled classes/functions and compiled code can make callbacks to CINT user defined functions. Utilities like, makecint and rootcint, automate the process of embedding compiled C/C++ library code as shared objects (as Dynamic Link Library, DLL, or shared library, .so). Source files and shared objects can be dynamically loaded/unloaded without stopping the CINT process. CINT offers a gdb like debugging environment for interepreted programs.

  • CINT works on number of operating systems. Linux, HP-UX, SunOS, Solaris, AIX, Alpha-OSF, IRIX, FreeBSD, NetBSD, NEC EWS4800, NewsOS, BeBox, HI-UX, Windows-NT/95/98, MS-DOS, MacOS, VMS, NextStep, Convex, and with number of compilers, g++, HP-CC/aCC, Sun-CC/CC5, IBM-xlC, Compac-cxx, SGI-CC, Visual-C++ Borland-C++, Symantec-C++, DJGPP.

  • CINT is developed by Masaharu Goto, who works for Agilent Technologies. Masaharu collaborates closely with the ROOT team to integrate CINT seamlessly into ROOT and to further optimize CINT/ROOT.

  • The ROOT system, developed at CERN, embeds CINT to be able to execute C++ scripts and C++ command line input. CINT also provides ROOT with extensive RTTI capabilities.

  • Currently CINT 5.15 is available via anonymous ftp for the following platforms:
  • CINT is free software in terms of charge and freedom of utilization. See the included README for more details.


    See the following chapters on how CINT is used in ROOT:

    Adding Your own Classes to ROOT
    CINT as Dictionary Generator
    CINT as Command Line and Macro Interpreter
    For more detailed CINT information see below:
    Rene Brun, Masaharu Goto & Fons Rademakers
    Last update 21/10/2000 by MG