Skip to content

Notes about modern C , C 11, C 14 and C 17, Boost Libraries, ABI, foreign function interface and reference cards.

Notifications You must be signed in to change notification settings

caiorss/C-Cpp-Notes

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CPP C Papyrus

C - CPP

Quick Access

Core C

Libraries and frameworks

System Programming

C and C Tooling

Building Systems and package managers

General

  • Tooling
    • Compilation of several development tools for C and C .
  • C and C Debuggers Notes
    • Notes about C and C debuggers. Covered: GDB (GNU Debugger) and WinDBG (Windows Debugger).
  • Doxygen - Documentation Generator
    • Doxygen documentation generator examples.
  • CERN’s Root C REPL and CLING
    • Notes about the CERN’s interactive interpereter based on Clang/LLVM for C where the user can type and evaluate C code, load libraries like shared libraries, boost libraries and and also test C with immediate feedback. ROOT is invaluable tool for learn, practicing C and create demonstrations.

Computer Graphics

  • Computer Graphics
    • Basics of computer graphics programming and math focused on OpenGL API.

Miscellaneous

  • C Alternatives and mixed C development
    • Mixed C development strategies and alternative programming languages to C with the following capabilities: native code compilation; high performance; static typing and ability to call C-APIs.
  • Shared Libraries - DLL - Binary Components in C / FFIs - Language Interoperability
    • Creating shared libraries, C-interfaces or C-APIs for C functions and classes. A C-interface allows a C library to be consumed from C and many programming languages with foreign-function interface support such as Python (ctypes FFI), C# Pinvoke, Java (JNA) and so on.
  • C Wrapper for C Libraries and Interoperability
    • Presents how to create C wrappers for calling C libraries from C and other programming languages via FFI - Foreign Function Interface. This note provides a sample C wrapper for QT-5 Widgets GUI library that allows calling QT from C, Julia language and D language. The techniques used in this particular case can be reused for interoperability between many other C libraries and programming languages.
  • Interfacing C APIs and libraries
    • Examples about how to interface and create wrappers to C APIs or libraries in modern C or C >= C 11 and use STL containers with C-APIs.
  • Embed Resources into Executables (Resource compilation)
    • About how to embed resources, assets, images, texts and binary files into executables.
  • Sample programs in modern C style
    • Complete small C programs and proof-of-concepts.
  • Rosetta Stone - English/Portuguese - Technical Terminology
    • Intended as reference about English technical terminology for Portuguese speakers. (Note: This text database has more 1.5 megabyte, what can be heavy for phone users)

Bookmarks

This Document

This Repository

This Site

Notes

  • This document can also be viewed from Smart Phones, Tablets or any other small screen devices.
  • To open a link (a.k.a hyperlink) in a new tab, hold CTRL key and click at the linl.
  • The HTML version of this document was tested on web browsers: Firefox, Chrome, Chromium, Microsoft Edge. Unfortunately the html version still does not work well on Safari web browser.