
Two very similar ctype functions are isgraph() and isprint(). Only one character separates the two functions. And the isgraph() function has nothing to do with graphics. These are the topics for this week’s Lesson as I continue my exploration of the ctype functions.
Continue reading
Category Archives: Lesson
Ctype Functions: isalnum(), isalpha() and isdigit()

The ctype functions isalnum(), isalpha(), and isdigit() examine the alphanumeric ASCII characters. Each of these functions are related, so I cover them together in this post that continues my exploration of the ctype functions.
Continue reading
Ctype Functions: isupper() and islower()

I wouldn’t say that the isupper() and islower() functions are the opposite of the toupper() and tolower() functions, though they do play well together. This week I continue my exploration of the ctype functions.
Continue reading
Ctype Functions: toupper() and tolower()

The easiest way to mess with characters in C is to employ the ctype functions. I name this category of library functions after the ctype.h header file that defines them. Some are true functions, some are macros. Each function can be replicated with standard C code, though it’s quicker to use an established function than to code your own. But that’s not the point of learning to program!
Continue reading
The Ctype Functions

Any C programmer eager to mess with characters or strings knows about the handy ctype functions. I use this name because these functions, which include a few macros, are defined in the ctype.h header file. Their job is to manipulate and examine characters.
Continue reading
Obtaining the Averages

The point of extracting data chunks from a grid is to obtain the average of their values. This approach is how I reduce the massive amount of data stored in an image for representation as ASCII text. (See the thumbnail above.)
Continue reading
Extracting Data Chunks

The next step in dividing a grid of data into chunks is to extract each of the chunks. Last week’s Lesson used color to visually identify the data chunks. This week’s update to the code pulls these chunks from the grid, using their values and colors to confirm that everything matches up properly.
Continue reading
C Blog 13th Anniversary

Today marks the 13th anniversary of this blog’s first post. The blog didn’t go live for a few months, specifically to ensure that I would A) keep up the posts (a fault with many blogs) and B) have plenty of material for visitors to peruse. It’s been going strong and consistently since that original post, April 13th, 2013.
Continue reading
Colorful Data Chunks

Continuing from last week’s Lesson, my goal for the grid is to split it into chunks which are then reduced based on the average value of each chunk. To best visualize this, I’d like to keep the byte patterns in the grid consistent and — as a bonus — color-code them.
Continue reading
Working with Data Chunks

I recently embarked upon a programming project where I must reduce large chunks of data into more manageable pieces. The general topic is computer graphics, so a bit of data loss when reducing an image is expected. But before working with the graphical data itself, I decided to run a test on a random chunk of data to confirm whether I was on the right track.
Continue reading