Skip to content

System programming example usage of the exec family of functions in conjunction with forking, file descriptor manipulation, threading, semaphores, and sockets.

Notifications You must be signed in to change notification settings

holman57/C-Examples

Folders and files

NameName
Last commit message
Last commit date
Jul 25, 2020
May 12, 2024
May 11, 2024
Oct 19, 2023
Nov 11, 2020
Nov 11, 2020
Oct 19, 2023
Sep 3, 2023
Jan 31, 2025
Feb 4, 2025
Feb 2, 2025
Feb 6, 2025
Dec 23, 2024
Jan 12, 2025
Feb 8, 2025
Jan 9, 2025
Jan 2, 2025
Feb 11, 2025
Jan 24, 2025
Jan 15, 2025
Feb 18, 2025
Dec 28, 2024
Sep 11, 2020
Feb 5, 2025
Jan 8, 2025
Dec 31, 2024
Dec 22, 2024
Jan 22, 2025
Oct 19, 2023
Jan 22, 2025
Sep 6, 2020
Jan 15, 2025
Jan 28, 2025
Feb 12, 2025
Feb 17, 2025
Feb 10, 2025
Dec 30, 2024
Feb 5, 2025
Dec 27, 2024
Sep 11, 2023
Jan 20, 2025
Jul 30, 2020
Jul 21, 2020
Jan 25, 2025
Feb 7, 2025
Aug 10, 2020
Jan 13, 2025
Jan 10, 2025
Sep 12, 2020
Dec 27, 2024
Jan 6, 2025
Sep 5, 2020
Sep 5, 2020
Aug 29, 2020
Jan 4, 2025
May 29, 2024
Sep 11, 2020
Jul 25, 2020
Jul 25, 2020
Aug 6, 2020
Jan 5, 2025
Jul 30, 2020
Sep 8, 2020
Jan 18, 2025
Dec 24, 2024
Jan 29, 2025
Feb 9, 2025
Jan 7, 2025
Feb 2, 2025
Jan 28, 2025
Jan 15, 2025
Jan 19, 2025
Feb 13, 2025
Aug 6, 2020
May 13, 2020
Nov 20, 2018
May 13, 2020
Nov 21, 2018
Nov 20, 2018
Nov 21, 2018
Nov 21, 2018
Nov 21, 2018
Nov 20, 2018
Dec 21, 2024
Nov 21, 2018
Jul 22, 2020
Nov 21, 2018
Jul 18, 2020
Nov 20, 2018
Dec 15, 2024
May 11, 2024
Jul 22, 2020
Jul 19, 2020
Nov 20, 2018
Nov 21, 2018
Nov 21, 2018
Sep 11, 2020
May 15, 2020
Nov 21, 2018
Nov 21, 2018
Nov 21, 2018
Nov 20, 2018
Nov 20, 2018
Nov 20, 2018
Nov 21, 2018
Nov 21, 2018
Nov 21, 2018
Nov 21, 2018
Nov 21, 2018
Aug 28, 2020
Nov 21, 2018
Nov 20, 2018
Nov 20, 2018
Nov 20, 2018
Nov 21, 2018
Aug 15, 2020
Jul 24, 2020
Aug 15, 2020
Nov 21, 2018
Nov 20, 2018
Nov 20, 2018
Jul 10, 2020
Nov 21, 2018

Repository files navigation

C Examples

The exec family of functions in conjunction with forking, file descriptors, threading, and sockets.

hackr.io C Tutorials and Courses

The Descent to C

  • This article attempts to give a sort of ‘orientation tour’ for people whose previous programming background is in high (ish) level languages such as Java or Python, and who now find that they need or want to learn C. https://www.chiark.greenend.org.uk/~sgtatham/cdescent/

The Archive of Interesting Code

Summary of C/C++ integer rules

Garbage Collection Algorithms

Single-file public-domain/open source libraries with minimal dependencies

Building Your Own C Interpreter

C Tutorials and Courses

Getting started with C programming

Learn C

How to implement a hash table (in C)

Modern C++ for C Programmers: part 1

Type-safe generic data structures in C

Synthetic Separation Logic

C++: The Good Parts

Orthodox C++

How C++ Resolves a Function Call

Conan - A package manager for C/C++

Cosmopolitan libc

CompCert

  • The CompCert C verified compiler is a compiler for a large subset of the C programming language that generates code for the PowerPC, ARM, x86 and RISC-V processors. https://github.com/AbsInt/CompCert

concurrencpp, the C++ concurrency library

Choosing Java instead of C++ for low-latency systems

Ray Tracing in pure CMake

How Does a C Debugger Work? (GDB Ptrace/x86 example)

Bit Manipulation with C++20

libcu++

  • the NVIDIA C++ Standard Library, is the C++ Standard Library for your entire system. It provides a heterogeneous implementation of the C++ Standard Library that can be used in and between CPU and GPU code. https://github.com/NVIDIA/libcudacxx

The Little Things

How expensive is integer-overflow trapping in C++?

SCC

  • SCC is a limited C compiler producing tiny-model DOS COM files. It should run on most operating systems and can self-host under DOS2.0+ compatible systems with 128K RAM https://github.com/mras0/scc

w64devkit

Urkel

chibicc: A Small C Compiler

  • chibicc is yet another small C compiler that implements most C11 features. Even though it still probably falls into the "toy compilers" category just like other small compilers do, chibicc can compile several real-world programs, including Git, SQLite and libpng, without making modifications to the compiled programs. https://github.com/rui314/chibicc

Frama-C

ztd.text and Unicode for C++

RISC-V userspace emulator library

A little puzzle with printf() and C argument passing

Nuklear

  • A minimal-state, immediate-mode graphical user interface toolkit written in ANSI C and licensed under public domain. It was designed as a simple embeddable user interface for application and does not have any dependencies https://github.com/Immediate-Mode-UI/Nuklear

enkiTS: A C and C++ Task Scheduler for creating parallel programs

Alternative operator representations

Althttpd: The Althttpd Webserver

Let's Build a Simple Database


Linear Algebra

Eigen

XTensor


Articles

  1. The C++ Iceberg https://fouronnes.github.io/cppiceberg/
  2. The road to hell is paved with good intentions and C++ modules https://nibblestew.blogspot.com/2023/10/the-road-to-hell-is-paved-with-good.html
  3. Macros on Steroids, Or: How Can Pure C Benefit From Metaprogramming https://hirrolot.github.io/posts/macros-on-steroids-or-how-can-pure-c-benefit-from-metaprogramming.html
  4. C++ Dev Ecosystem 2021 https://www.jetbrains.com/lp/devecosystem-2021/cpp/
  5. Metaprogramming custom control structures in C https://www.chiark.greenend.org.uk/~sgtatham/mp/
  6. Goodbye C developers: The future of programming with certified program synthesis https://gopiandcode.uk/logs/log-certified-synthesis.html
  7. When static makes your C code 10 times faster https://mazzo.li/posts/c-performance-anecdote.html
  8. Correctly implementing a spinlock in C++ https://rigtorp.se/spinlock/
  9. Goodbye C++, Hello C https://momentsingraphics.de/ToyRenderer1KeepItSimple.html
  10. Summer 2021 ISO C++ standards meeting https://herbsutter.com/2021/06/09/trip-report-summer-2021-iso-c-standards-meeting-virtual/
  11. Why I still like C and strongly dislike C++ https://codecs.multimedia.cx/2021/05/why-i-still-like-c-and-strongly-dislike-cpp/
  12. Modern C for C++ Peeps https://floooh.github.io/2019/09/27/modern-c-for-cpp-peeps.html
  13. Undefined behavior in C is a reading error. https://www.yodaiken.com/2021/05/19/undefined-behavior-in-c-is-a-reading-error/
  14. Instant replay: Debugging C and C++ programs with rr https://developers.redhat.com/blog/2021/05/03/instant-replay-debugging-c-and-c-programs-with-rr/
  15. C++ Constructors, Memory, and Lifetimes https://erikmcclure.com/blog/cpp-constructors-memory-and-lifetimes/
  16. Modern C++ Won't Save Us https://alexgaynor.net/2019/apr/21/modern-c++-wont-save-us/
  17. Learn X in Y minutes https://learnxinyminutes.com/docs/c/
  18. How you can handle The Diamond with CMake http://beza1e1.tuxen.de/cmake_diamond.html
  19. A "BETTER C" BENCHMARK https://zserge.com/posts/better-c-benchmark/
  20. Making Your Own Container Compatible With C++20 Ranges https://www.reedbeta.com/blog/ranges-compatible-containers/
  21. Parsing floating-point numbers really fast in C# https://lemire.me/blog/2021/02/22/parsing-floating-point-numbers-really-fast-in-c/
  22. David Mazieres' tutorial and take on C++20 coroutines https://www.scs.stanford.edu/~dm/blog/c++-coroutines.html
  23. Cross-language interfaces between C and C++ https://gustedt.wordpress.com/2017/08/08/cross-language-interfaces-between-c-and-c/
  24. Is the C runtime and library a legitimate part of the Unix API? https://utcc.utoronto.ca/~cks/space/blog/unix/UnixAPIAndCRuntime
  25. What does I/O bound really mean? Erik Engbrecht's Blog http://erikengbrecht.blogspot.com/2008/06/what-does-io-bound-really-mean.html?m=1
  26. The Jim Roskind C/C++ Grammar https://blog.robertelder.org/jim-roskind-grammar/
  27. A Special Kind of Hell - intmax_t in C and C++ https://thephd.github.io/intmax_t-hell-c++-c
  28. Overloading by Return Type in C++ https://artificial-mind.net/blog/2020/10/10/return-type-overloading
  29. Does C++ still deserve the bad rap it has had for so long? https://nibblestew.blogspot.com/2020/10/does-c-still-deserve-bad-rap-it-has-had.html
  30. No, C++ still isn't cutting it. https://da-data.blogspot.com/2020/10/no-c-still-isnt-cutting-it.html
  31. What's Wrong with C++ Templates? http://people.cs.uchicago.edu/~jacobm/pubs/templates.html
  32. Multi-Level Break in C++ via IIFE https://artificial-mind.net/blog/2020/10/28/multi-level-break-iife
  33. Fast programming languages: C, C++, Rust, and Assembly http://tempesta-tech.com/blog/fast-programming-languages-c-c++-rust-assembly
  34. Why nullable types? https://medium.com/dartlang/why-nullable-types-7dd93c28c87a
  35. Qt and Trivial Relocation https://www.kdab.com/qt-and-trivial-relocation-part-1/

Papers

  1. SIMD for C++ Developers http://const.me/articles/simd/simd.pdf
  2. Improve type generic programming proposal for C23 http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2638.pdf
  3. Toward Unseating the Unsafe C Programming Language https://www.computer.org/csdl/magazine/sp/2021/02/09382362/1saZSnqpzz2
  4. Some Were Meant for C https://www.cs.kent.ac.uk/people/staff/srk21/research/papers/kell17some-preprint.pdf
  5. The Evolution of C Programming Practices: A Study of the Unix Operating System 1973-2015 https://ieeexplore.ieee.org/abstract/document/7886953
  6. C source-to-source compiler enhancement from within https://hal.inria.fr/hal-02998412
  7. Compiling without Continuations https://dl.acm.org/doi/10.1145/3062341.3062380
  8. HardBound: Architectural Support for Spatial Safety of the C Programming Language https://dl.acm.org/doi/pdf/10.1145/1353535.1346295
  9. Program Analysis and Specialization for the C Programming Language https://www.semanticscholar.org/paper/Program-Analysis-and-Specialization-for-the-C-Andersen-Lee/b7efe971a34a0f2482e0b2520ffb31062dcdde62
  10. The Semantics of the C Programming Language http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.29.6755&rep=rep1&type=pdf

Books

  1. Thriving in a Crowded and Changing World: C++ 2006–2020 https://www.stroustrup.com/hopl20main-p5-p-bfc9cd4--final.pdf
  2. Beej’s Guide to C Programming http://beej.us/guide/bgc/pdf/bgc_usl_c_1.pdf

About

System programming example usage of the exec family of functions in conjunction with forking, file descriptor manipulation, threading, semaphores, and sockets.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published