C, C++, POSIX and Linux system programming minimal examples. Asserts used wherever possible. Hello worlds for cool third party libraries and build systems. Cheatsheets, tutorials and mini-projects.
Switch branches/tags
Nothing to show
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
boost REmove -y from apt-get install, it is destructive Aug 25, 2017
bullet Finish kill tab devils. Sep 2, 2018
c-from-cpp C from C++: make awesome Aug 18, 2018
c float ranges Nov 8, 2018
cmake ode: make awesome Sep 2, 2018
cpp-from-c Finish kill tab devils. Sep 2, 2018
cpp static constructor private Dec 5, 2018
cuda bak May 19, 2017
eigen Finish kill tab devils. Sep 2, 2018
ffmpeg Finish kill tab devils. Sep 2, 2018
flex-bison Finish kill tab devils. Sep 2, 2018
fortran-from-c Finish kill tab devils. Sep 2, 2018
fortran Split main.c further, add a separate test script Jun 12, 2015
frama-c Start frama-c Aug 24, 2015
gcc remove some accidental blobs Oct 27, 2018
gdb gdb: find_line 1 based instead of 0 Nov 13, 2018
glibc get rid of the main() without (void) plague Oct 5, 2018
gsl ode: make awesome Sep 2, 2018
gtk REmove -y from apt-get install, it is destructive Aug 25, 2017
kde REmove -y from apt-get install, it is destructive Aug 25, 2017
lapack Finish kill tab devils. Sep 2, 2018
linux REmove -y from apt-get install, it is destructive Aug 25, 2017
make get rid of the main() without (void) plague Oct 5, 2018
opencl Finish kill tab devils. Sep 2, 2018
opencv REmove -y from apt-get install, it is destructive Aug 25, 2017
opengl opengl: offscreen use GL_PACK_ALIGNMENTas Nov 3, 2018
plplot Finish kill tab devils. Sep 2, 2018
png png deallocate properly (credits to mgmalheiros), improve heat equation Nov 22, 2016
posix setpgid: print parent / child on signal handler Dec 13, 2018
qt REmove -y from apt-get install, it is destructive Aug 25, 2017
scons scons: more examples Dec 6, 2018
sdl bst_vs_heap: failed insert benchmark attempt Aug 19, 2018
shared-library C threads example Sep 22, 2018
swig REmove -y from apt-get install, it is destructive Aug 25, 2017
template REmove -y from apt-get install, it is destructive Aug 25, 2017
v4l2 Finish kill tab devils. Sep 2, 2018
x11 Start tons of small opengl examples Mar 18, 2016
.gitignore remove some accidental blobs Oct 27, 2018
.travis.yml Try to fix travis by adding separate configure Nov 2, 2017
CONTRIBUTING.md Improve index Apr 20, 2015
LICENSE license Jul 31, 2018
Makefile_many makefile: fix break, bst_vs_heap: improve gnuplot Aug 20, 2018
Makefile_one Start tons of small opengl examples Mar 18, 2016
README.md tagline: make nicer Sep 2, 2018
TODO.md collision detection May 2, 2016
Vagrantfile Remove submodule Jun 12, 2015
bibliography.md Split glibc brk Jun 26, 2015
build-systems.md OpenGL texture, POSIX benchmark Apr 29, 2016
c-vs-cpp.md Improve index May 18, 2016
c_many.makefile Split main.c further, add a separate test script Jun 12, 2015
cflow.md OpenGL texture, POSIX benchmark Apr 29, 2016
clang.md posix split execl Jul 27, 2015
configure Add libncurses to deps Nov 18, 2017
getting-started.md crappyness disclaimer Nov 17, 2018
gprof.md gdb python API, split more C and C++ Jul 6, 2015
linting-tools.md Start frama-c Aug 24, 2015
perf.md gdb python API, split more C and C++ Jul 6, 2015
test Split main.c further, add a separate test script Jun 12, 2015
valgrind.md gdb python API, split more C and C++ Jul 6, 2015

README.md

C++ Cheat

Build Status

C, C++, POSIX and Linux system programming minimal examples. Asserts used wherever possible. Hello worlds for cool third party libraries and build systems. Cheatsheets, tutorials and mini-projects.

Assembly Cheat contains lower level issues, like assembly, ELF and Binutils.

  1. Getting started
  2. Featured
    1. C
    2. C++
    3. POSIX: POSIX C API
    4. OpenGL
    5. GCC: GCC extensions
    6. Shared library
  3. Introduction
    1. C vs C++
  4. Cross-language
    1. C from C++
    2. C++ from C
    3. Fortran from C
    4. SWIG
  5. Build systems
    1. make
    2. CMake
    3. SCons
  6. Analysis tools
    1. GDB
    2. cflow
    3. Linting tools
      1. Frama-C
    4. Profiling
      1. gprof
      2. Valgrind
      3. perf
  7. Parsing
    1. Flex and Bison
  8. Media
    1. FFmpeg
    2. libpng
    3. v4l2
  9. Utility
    1. Boost
    2. glibc
    3. Linux
  10. GUI
    1. GTK
    2. KDE
    3. OpenGL
    4. Qt
    5. SDL
    6. X11
  11. Scientific
    1. Bullet physics
    2. CUDA
    3. Fortran
    4. GSL
    5. LAPACK
    6. OpenCL
    7. OpenCV
    8. PLplot
  12. CONTRIBUTING
  13. TODO
  14. Bibliography