You have two choices when modifying a string in a function: You can modify the string directly or you can create a new string and return it. Either way, a new string is created based on the old.
Continue reading
Passing Strings to a Function
Despite teaching the C language, I still find myself at odds with pointers. Specifically, it’s the double pointers that remind me of my mortality. I found myself getting into the double pointer polka recently when I tried to work with an array of strings, passing each one individually to a function. O! The pain!
Continue reading
Negative Array Elements
I enjoy it when an experienced coder reviews my stuff. I’m happy with the feedback, and occasionally they toss me a bone. This time it was a rather obscure bone, but I see the point: Avoid using negative array elements.
Continue reading
A Handy ASCII Table – Solution
My ASCII table program had several iterations. It’s easy to get carried away, but it’s also easy to be too skimpy on the information. This month’s Exercise is based on my current ASCII program, which has evolved over the years.
Continue reading
Characters, Values, and Playing with Your Brain
I’ve messed with characters as values quite a few times in my code. Keeping in mind that the char data type is really a tiny integer value, you can perform all kinds of tricks — stuff that drives non-programmers crazy.
Continue reading
A Handy ASCII Table
Difficulty: Easy
Every coder needs an ASCII table. Even back in the old days, when I memorized such things as the Escape character was equal to 27 decimal, 0x1b hex, and had the keyboard shortcut ^[, I would glance at the ASCII table poster hanging on the wall to confirm that I was using the proper values in my code. And the poster looked cool.
Continue reading
Reading strings with the sscanf() Function
I’m not a fan of the scanf() function. It’s an input function, quick enough to toss out there for a beginner to write a (somewhat) interactive programs. But the function itself is horrid, with complex arguments and dubious results.
So imagine my delight at finding its companion function, sscanf().
Continue reading
Discovering Command Line Options, Part V
Somewhere along the line, shell commands developed longer, verbose versions of their original, short command line switches. So in addition to -o you also could use --output. These switches offer readability and are easier to remember. Alas, the getopt() function doesn’t process them, but its sibling function getopt_long() does.
Continue reading
Discovering Command Line Options, Part IV
Some command line switches stand alone. Others are followed by options, such as a starting value, filename, and other settings. The getopt() function processes these values along with the switches, providing you know the secret.
Continue reading
Discovering Command Line Options, Part III
Continuing from last week’s Lesson, to read multiple command line arguments, you must put the getopt() function in a loop. Specifically, you set the function as the looping condition. The loop’s guts evaluate the switches found.
Continue reading