Skip to primary content
Skip to secondary content

C For Dummies Blog

Main menu

  • C For Dummies (home)
  • History
  • Series
  • Supplemental
  • Blog Miscellany

Category Archives: Lesson

Post navigation

← Older posts
Newer posts →

Conditional Expressions Used as Values

Posted on May 7, 2022 by dgookin
Reply

It was weird when I first saw it: A conditional expression used to determine a value. It sounds odd, but it works.
Continue reading →

Posted in Lesson | Leave a reply

Outputting an Unterminated Buffer

Posted on April 30, 2022 by dgookin
Reply

Properly formed strings in C are terminated with the null character, \0. Accept it or die!

However . . .
Continue reading →

Posted in Lesson | Leave a reply

Desperately Freeing Allocated Memory

Posted on April 23, 2022 by dgookin
1

The critical issue about allocating and then freeing memory is to avoid a memory leak. This condition happens when a memory chunk gets lost, leaving the it lingering in RAM not doing anyone any good. Most often a memory leak occurs in a function.
Continue reading →

Posted in Lesson | 1 Reply

Freeing Allocated Memory

Posted on April 16, 2022 by dgookin
2

One criticism I receive is that my code examples, from both my online training material as well as in my C programming books, fail to free any allocated memory before the program quits. This assertion is correct, and I have a darn good reason why!
Continue reading →

Posted in Lesson | 2 Replies

Color Text, Part II

Posted on April 9, 2022 by dgookin
Reply

From last week’s Lesson, I showed how ANSI codes are used to set color text in terminal output. It’s time to go nuts showing the possibilities.
Continue reading →

Posted in Lesson | Leave a reply

Color Text, Part I

Posted on April 2, 2022 by dgookin
Reply

Your C programs’ text output need not be so dull. Aside from adding wide characters, you can spice things up with color text. The terminal flavor is what determines the color palette. All you need to know are the secret codes that activate and deactivate the attributes.
Continue reading →

Posted in Lesson | Leave a reply

Accessing the Printer in C

Posted on March 26, 2022 by dgookin
Reply

Back in the old days, the printer was a device wired to the computer and handled directly by whatever program wanted to use it. Printing in C involved opening the printer device and sending the data. Today, things work differently.
Continue reading →

Posted in Lesson | Leave a reply

Initializing a Buffer – Your Own memset() Function

Posted on March 19, 2022 by dgookin
Reply

As I wrote in last week’s Lesson, the C23 standard renders the memset() function — a standard C library function for over 30 years — obsolete. If you want to initialize a buffer, you can use the secure memset_s() or just initialize the buffer manually or with your own memset()-like function.
Continue reading →

Posted in Lesson | Leave a reply

The Perils of the memset() Function

Posted on March 12, 2022 by dgookin
2

While researching the upcoming — and significant — C23 version of the C programming language, I learned something surprising: The memset() function will be deprecated. It effectively does nothing when used in the C23 standard. The reason makes a lot of sense.
Continue reading →

Posted in Lesson | 2 Replies

How Many Characters Output – So Far?

Posted on March 5, 2022 by dgookin
2

I doubt any C programmer has memorized all of the printf() function’s placeholders, options, and settings. It’s a character salad of interesting and weird things. One of the strangest has to be the %n placeholder.
Continue reading →

Posted in Lesson | 2 Replies

Post navigation

← Older posts
Newer posts →

Recent Posts

  • What is the Largest Value?
  • Accessing the Mouse in a Terminal Window
  • Storing and Interpreting Mouse Input
  • Where is the Mouse?
  • Pulling Numbers from a String – Solution

Recent Comments

  • dgookin on Reading Raw Input
  • Chris Webb on Reading Raw Input
  • dgookin on Is It a “Real” Triangle? – Solution
  • Chris Webb on Is It a “Real” Triangle? – Solution
  • dgookin on A Colorful Hexdump

Meta

  • Log in
  • Entries feed
  • Comments feed
  • WordPress.org

Copyright © 1997-2026 by QPBC.
All rights reserved

Proudly powered by WordPress