printf

Tiny, fast(ish), self-contained, fully loaded printf, sprinf etc. implementation; particularly useful in embedded systems. (by eyalroz)

Printf Alternatives

Similar projects and alternatives to printf

  1. libcurl

    A command line tool and library for transferring data with URL syntax, supporting DICT, FILE, FTP, FTPS, GOPHER, GOPHERS, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, MQTT, MQTTS, POP3, POP3S, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, TELNET, TFTP, WS and WSS. libcurl offers a myriad of powerful features

  2. SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
  3. carbon-lang

    Carbon Language's main repository: documents, design, implementation, and related tools. (NOTE: Carbon Language is experimental; see README)

  4. stb

    182 printf VS stb

    stb single-file public domain libraries for C/C++

  5. {fmt}

    176 printf VS {fmt}

    A modern formatting library

  6. cppfront

    A personal experimental C++ Syntax 2 -> Syntax 1 compiler

  7. jakt

    34 printf VS jakt

    The Jakt Programming Language

  8. ds9k

    Meet ds9k, the destroyer of worlds.

  9. gx

    A Go->C++transpiler meant for data-oriented gameplay and application programming especially for WebAssembly. Using this mostly in the context of specific personal projects and heavily focusing the feature set on those. Used in my Raylib gamejam project: https://github.com/nikki93/raylib-5k -- also being used to develop a private longer term game project and a note-taking app. (by nikki93)

  10. nanoprintf

    The smallest public printf implementation for its feature set.

  11. beyondnet

    A toolset that makes it possible to call .NET code from other programming languages, including C, Swift and Kotlin.

  12. slimcc

    C23 compiler with C2y/GNU extensions for x86-64 Linux/BSD, written in C99

  13. callback_printf

    Portable wrappers of sprintf, snprintf, vsprintf and vsnprintf. Fast, threadsafe and without dependencies to other libraries. All types and formats of C 11 standard and all numeric bases from 2 to 36 are supported. wchar_t arguments are printed as UTF-8.

  14. rust-gpu

    7 printf VS rust-gpu

    🐉 Making Rust a first-class language and ecosystem for GPU shaders 🚧 (by Rust-GPU)

  15. arduino-printf

    Add printf support to the Arduino SDK

  16. pwned

    1 printf VS pwned

    Simple C++ code for simple tasks (by nurettin)

  17. libnklabs

    NK Labs Common Library

  18. EiGen

    C++11 cross-platform migration of the Eigen Compiler Suite backend, and C frontends and libc/m for Eigen

  19. MinQND-libc

    Minimal quick & dirty libc, mainly meant for use in my WebAssembly modules

  20. Uprintf

    Tired of bloated or limited printf in embedded systems? Uprintf is the universal, zero-dependency solution you've been looking for.

  21. micro-wake-word

    A TensorFlow based wake word detection training framework using synthetic sample generation suitable for certain microcontrollers.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a better printf alternative or higher similarity.

printf discussion

Log in or Post with

printf reviews and mentions

Posts with mentions or reviews of printf. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2026-06-03.
  • ESP32-S31
    2 projects | news.ycombinator.com | 3 Jun 2026
    I'm the maintainer of a standalone printf library, targeting mostly embedded devices and other no-standard-library use cases:

    https://github.com/eyalroz/printf/

    I would like to make sure the library can be used on this SoC, and other RISC-V systems; which it probably can, but if there are any issues cross-compiling for it, or using the toolchain Espressif provides, please consider filing a bug report. Same of course goes for any FOSS librar/tool that you're trying out. Let's help foster a rich(er) ecosystem of software available on them.

  • Generalizing Printf in C
    1 project | news.ycombinator.com | 28 Nov 2025
    A popular standalone printf-family library in the embedded world is, well libprintf:

    https://github.com/eyalroz/printf

    originally by Marco Paland, now maintained, or 'curated' by myself. It has this generalization :

      int fctprintf(void (*out)(char c, void* extra_arg), void* extra_arg, const char* format, ...);
  • Show HN: Uprintf a universal stb-style printf implementation for C (no OS)
    5 projects | news.ycombinator.com | 20 Aug 2025
    Maybe the rabbit hole is much deeper than it seems.

    Is it really possible to reconcile "no bloat" with "fully standard compliant"?

    Maybe have a look at https://github.com/eyalroz/printf, if only for the test suite, which looks pretty comprehensive and still fails.

    Maybe "key features" does not mean the same in all projects, making every project appear "unnecessarily bloated while missing key features" in every other context?

  • Bare metal printf – C standard library without OS
    9 projects | news.ycombinator.com | 26 Apr 2025
    > What customization would it support?

    I don't understand your question. It's reasonably readable and understandable source code. You edit the source code. That's the customisation?

    > Say, compared to these options: https://github.com/eyalroz/printf?tab=readme-ov-file#cmake-o...

    First, it is customary etiquette to indicate when linking your own code/work.

    Second, that is not a POSIX compatible printf, it lacks support for '%n$' (which is used for localisation. Arguably can make sense to omit for tiny embedded platforms - but then why is there FP support?)

    Third, cmake and build options really seem to be overkill for something like this. Copy the code into the target project, edit it. If you use your own printf, you probably need a bunch of other custom stuff anyway.

    Fourth, the output callback is a reasonable idea, but somewhat self-contradictory. You're bringing in your own printf. Just adapt it to your own I/O backend, like libc has FILE*.

  • Detecting if an expression is constant in C
    3 projects | news.ycombinator.com | 22 Apr 2025
    > with file specific flags

    But you don't want to disable warnings throughout the file, just locally.

    > Then you don't have non-portable cruft littering the code,

    You can make it perfectly portable, with a little macro work. See, ,for example:

    https://github.com/eyalroz/printf/blob/013db1e345cbb166a7eb7...

    and that you only need to do once in your project (you can make it your own header). Even when it comes to use - you can place your warning-disabling within another macro, so that you end up only using a simple single macro for your actual code.

  • Using Libc for GPUs
    5 projects | news.ycombinator.com | 14 Dec 2024
    > stuff - the most common request was for printf as a debugging crutch

    I have actually adapted a library for that particular case:

    https://github.com/eyalroz/printf/

    I started with a standalone printf-family implementation targetting embedded devices, and (among other things) adapted it for use also with CUDA.

    > I mostly wanted mmap.

    Does it really make sense to make a gazillion mmap calls from the threads of your GPU kernel? I mean, is it really not always better to mmap on the CPU side? At most, I might do it asynchronously using a CUDA callback or some other mechanism. But I will admit I've not had that use-case.

  • The C23 edition of Modern C is now available for free
    5 projects | news.ycombinator.com | 15 Oct 2024
    It's only been a few years since I've come to feel I can rely on C compilers all supporting C99, for a library I'm maintaing [1]. And after a couple of years, sure enough - I get an issue opened asking for C89 compatibility because of some arcane embedded toolchain or what-not.

    [1]: https://github.com/eyalroz/printf

  • MISRA C
    1 project | news.ycombinator.com | 7 Nov 2023
    From my experience, maintaining a standalone/embedded printf library - MISRA is a combination of two things: Common-sense rules, and pain-in-the-ass rules. Example of the latter: Avoiding implementation-defined types like `int` in places where my code doesn't care about what sizeof(int) is.

    I was able to accommodate most (?) of the MISRA rules (https://github.com/eyalroz/printf/issues/77), but mine is just a small library, so I don't know how restrictive they would be for a larger codebase.

  • Sprintf without C library
    5 projects | /r/C_Programming | 7 Feb 2023
    Note that https://github.com/eyalroz/printf is the fork of mpaland that is being maintained.
  • What is the most efficient way to create an ASCII string from multiple types?
    1 project | /r/embedded | 29 Dec 2022
    Take a look at an embedded focused sprintf like this one and measure: https://github.com/eyalroz/printf
  • A note from our sponsor - SaaSHub
    www.saashub.com | 9 Jun 2026
    SaaSHub helps you find the best software and product alternatives Learn more →

Stats

Basic printf repo stats
13
620
3.8
19 days ago

eyalroz/printf is an open source project licensed under MIT License which is an OSI approved license.

The primary programming language of printf is C.


Sponsored
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com

Did you know that C is
the 6th most popular programming language
based on number of references?