This month’s programming Exercise isn’t as much about file access as it’s about dealing with a situation when no data is available. The task: Read the seventh line from a file.
Continue reading
Author Archives: dgookin
What is This? Why do I Want It? What Does it Do?
Sometimes I turn off my programmer brain and look at code to admire it in an innocent way. At first glance a C program source code file looks poetic, using the same patterns and flow. Code is also cryptic, which inspires many programmers to try to invent a new way to do something in a charming and confusing manner. One of my attempts was to rationalize this expression: ++a++
Continue reading
The Seventh Line
Difficulty: ★ ★ ☆ ☆
For me, the scariest part of learning how to program a computer was file access. The problem was the horrid documentation. It introduced both sequential and random file access together without much explanation. So it was with much trepidation that I wrote my first file I/O program. That’s when I realized that the manual was stupid.
Continue reading
Optimizing My Code
One of the burdens of being a programmer is that few people are witness to your brilliance. You can write the keenest code since the Countess of Lovelace and it’s likely no one will ever appreciate your genius. But don’t let this limitation stop you!
Continue reading
Merry Pointer Mischief
Nothing paralyzes a C programmer like double-asterisk notation. What does it mean? Can you use it? How is it passed to a function and then referenced? I, too, fall victim to this confusion. So a good explanation is in order.
Continue reading
More ANSI Code Cursor Manipulation
C is stream oriented, but in a terminal window you can use ANSI commands to provide more control. These commands can change text color as well as manipulate the cursor’s location, as covered in this month’s Exercise solution. The manipulation isn’t over yet!
Continue reading
Clear the Screen – Solution
The task for this month’s Exercise is to clear the screen. I pray you didn’t arrive at a solution that outputs multiple blank lines. No, you must use the ANSI codes offered in the exercise post to manipulate the cursor and wipe clean the screen. Or you could cheat, which is what I did.
Continue reading
Erasing Text for Stream Output
One of my first programming obsessions was online communications. I wrote several modem programs for the TRS-80 (in Z80 Assembly) and then moved to the IBM PC/MS-DOS where I coded communications programs in both Assembly and C. I learned a few things.
Continue reading
Clear the Screen
Difficulty: ★ ☆ ☆ ☆
If you’ve studied the terminal window at any length, you probably know about the clear command, which clears the screen. Under MS-DOS, and on my old TRS-80, the command is cls. Same thing.
Continue reading
A Grid of Random Stars, Part VII
The final (and merciful) update to my Grid of Random Stars program involves two major changes. First, because I call the update_grid() function only once, it can be incorporated into the main() function, no program. Second, I remove pointer notation.
Continue reading