The xchange library provides a framework for platform independent data exchange for structured data in C/C++, and includes a JSON parser and emitter.
While there are many excellent libraries out there that offer such capabilities for C++ and/or other object-oriented languages, support for structured data exchange is notably rare for standard C. The xchange library aims to fill that niche, by providing a data exchange framework with a C90-compatible API that supports the interchange of arbitrary structured data between different platforms and different serialization formats with ease. The xchange library also provides support for JSON formatting and parsing using the C90 standard out of the box. All that in a light-weight and fast package.
The xchange library was created, and is maintained, by Attila Kovács at the Center for Astrophysics | Harvard & Smithsonian, and it is available through the Smithsonian/xchange repository on GitHub.
This site contains various online resources that support the library:
Downloads
- Releases from GitHub
Documentation
- User’s guide (
README.md
) - API Documentation
- History of changes (
CHANGELOG.md
) - Issues affecting xchange releases (past and/or present)
- Community Forum – ask a question, provide feedback, or check announcements.