In last week’s Lesson, I presented code that shows one way to wrap incoming streaming text. It’s not the easiest thing. Let me explain how last week’s code attempts to solve the problem.
Continue reading
Category Archives: Lesson
A Word Wrap Filter
Unlike static text, streaming text feeds into a program one character at a time. To wrap that text, you need to know all the basics about wrapping text (covered in this Lesson), but also how to concoct a filter that buffers its output.
Continue reading
Wrapping Static Text
When displaying a long string of text, it’s polite — and expected — for the programmer to wrap the text. Not wrapping the text would split words at the right margin, which irritates human readers to no end.
Continue reading
Word Wrap Philosophy
Way back in the day, word wrap was fascinating. It was so unique that word processors boasted about it as a feature. I’m serious! That’s because a lot of the primitive (late 1970s and early 1980s) word processing programs did not wrap text at the end of a line. Strange, but true.
Continue reading
Hello, Function!
A basic C language process is passing a value to a function. If you’re an old hand, you might say, “Yeah, well, so?” For a beginning programmer, however, functions and their arguments can be a confusing and intimidating ordeal.
Continue reading
scanf() the Bastard
When you first learn the C language, and you’re practicing basic input/output, you become familiar with the two I/O workhorses of the C library: printf() and scanf(). Of the two, printf() is my favorite. The scanf() function is highly useful, and it’s a great learning tool, but it’s not the best function for reading in a string of text.
Continue reading
Reading Command Line Options
You might think that the command line is a relic of the past. For a mortal user, that’s correct: The only people I know who still dwell at the command prompt are power users. I keep a command prompt (terminal) window open on my computers, just because using the terminal is fast and I happen to know the commands. Yet, internally, all graphical operating systems still reference the command line.
Continue reading
Manually Allocating a Pointer Array
A few Lessons ago, I mentioned that a variable such as **months couldn’t be used to declare an array. That’s true because the **months construction doesn’t use array notation. Duh. That doesn’t mean that **months is totally out of luck.
Continue reading
Direct String Manipulation
As programmer, you have a choice: You can manipulate information as it’s sent to output or you can manipulate it in memory and then send the result to output. Depending on what the program does, however, you may not have that luxury. Sometimes you must make modifications in memory, saving them for later.
Continue reading
The Art of String Manipulation: Spaces to Newlines
The C language lacks a sack of tools for manipulating strings. For most string-mangling operations, you’re pretty much left to carve out your own tools. Doing so may involve pointers, but it doesn’t necessarily have to.
Continue reading