diff options
Diffstat (limited to 'public/fd_printf.html')
-rw-r--r-- | public/fd_printf.html | 30 |
1 files changed, 22 insertions, 8 deletions
diff --git a/public/fd_printf.html b/public/fd_printf.html index ff35631..dc4d7c6 100644 --- a/public/fd_printf.html +++ b/public/fd_printf.html @@ -2,18 +2,23 @@ <html lang="en"> <head> <meta charset="utf-8"> - <title>`dprintf`: print formatted text directly to a file descriptor — Luke Shumaker</title> + <title>`dprintf`: print formatted text directly to a file descriptor — Luke T. Shumaker</title> + <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="stylesheet" href="assets/style.css"> <link rel="alternate" type="application/atom+xml" href="./index.atom" name="web log entries"/> </head> <body> -<header><a href="/">Luke Shumaker</a> » <a href=/blog>blog</a> » fd_printf</header> +<header><a href="/">Luke T. Shumaker</a> » <a href=/blog>blog</a> » fd_printf</header> <article> -<h1 id="dprintf-print-formatted-text-directly-to-a-file-descriptor"><code>dprintf</code>: print formatted text directly to a file descriptor</h1> -<p>This already existed as <code>dprintf(3)</code>. I now feel stupid for having Implemented <code>fd_printf</code>.</p> +<h1 +id="dprintf-print-formatted-text-directly-to-a-file-descriptor"><code>dprintf</code>: +print formatted text directly to a file descriptor</h1> +<p>This already existed as <code>dprintf(3)</code>. I now feel stupid +for having Implemented <code>fd_printf</code>.</p> <p>The original post is as follows:</p> <hr /> -<p>I wrote this while debugging some code, and thought it might be useful to others:</p> +<p>I wrote this while debugging some code, and thought it might be +useful to others:</p> <pre><code>#define _GNU_SOURCE /* vasprintf() */ #include <stdarg.h> /* va_start()/va_end() */ #include <stdio.h> /* vasprintf() */ @@ -36,12 +41,21 @@ fd_printf(int fd, const char *format, ...) free(str); return len; }</code></pre> -<p>It is a version of <code>printf</code> that prints to a file descriptor—where <code>fprintf</code> prints to a <code>FILE*</code> data structure.</p> -<p>The appeal of this is that <code>FILE*</code> I/O is buffered—which means mixing it with raw file descriptor I/O is going to produce weird results.</p> +<p>It is a version of <code>printf</code> that prints to a file +descriptor—where <code>fprintf</code> prints to a <code>FILE*</code> +data structure.</p> +<p>The appeal of this is that <code>FILE*</code> I/O is buffered—which +means mixing it with raw file descriptor I/O is going to produce weird +results.</p> </article> <footer> -<p>The content of this page is Copyright © 2013 <a href="mailto:lukeshu@sbcglobal.net">Luke Shumaker</a>.</p> + <aside class="sponsor"><p>I'd love it if you <a class="em" + href="/sponsor/">sponsored me</a>. It will allow me to continue + <a class="em" href="/imworkingon/">my work</a> on the GNU/Linux + ecosystem. Thanks!</p></aside> + +<p>The content of this page is Copyright © 2013 <a href="mailto:lukeshu@lukeshu.com">Luke T. Shumaker</a>.</p> <p>This page is licensed under the <a href="http://www.wtfpl.net/txt/copying/">WTFPL-2</a> license.</p> </footer> </body> |