I admit that sometimes I need to see someone else’s code before a formerly obscure function becomes useful to me. A case in point is the strchr() function, which I rarely use.
Continue reading
Category Archives: Lesson
Macros Galore!
In last week’s Lesson, I demonstrated how macros can save time, effectively replacing one-line functions in your code. One place I’ve used macros in my own code is when performing binary math operations.
Continue reading
Macros or Functions
In C, a macro is a preprocessor directive that creates a shortcut, often a one-line expression to be inserted elsewhere in the code. Macros can make code more readable, but they can have a negative effect when implemented in a clumsy manner.
Continue reading
Locale Settings Dear to You
The setlocale() function, mentioned in last week’s Lesson, both returns the current locale string and sets a new locale. It’s not necessary to call this function to gather locale details already known to your computer. To pluck out this detail, use the localeconv() function.
Continue reading
Don’t be a Stranger to the Locale
A major hurdle in computer science was getting disparate computers to speak with each other. Not verbally, of course, but by exchanging files in compatible file formats. After this task was ironed out, professionals in white lab coats realized the next step was massaging program output to match the user’s language and other local preferences.
Continue reading
Fetching the Search Path
The search path is a list of directories in which the operating system scans for programs. Its purpose is to allow quick access to common programs and system utilities without the necessity of typing a full pathname or changing to the right directory to start an application.
Continue reading
Building a Format String
In the printf() function, the first argument is a format string. It can contain the various percent placeholders to represent values expressed in the remaining arguments. But can one of those arguments also contain placeholders?
Continue reading
A Curious Thing About Array Notation
It’s nuts. All through your C training when you learned about arrays, you were taught the format: array[x] where array is the name of the array and x is the element number. But this expression can also be written as x[array].
Mind. Blown.
Continue reading
Exit Status Defined Constants
The tradition for successfully exiting a command line program is to use return 0; or, as I write it, return(0);. Zero is the OK value, meaning a program exited cleanly. Other values returned represent specific conditions, not necessarily errors, but information that can be communicated to the operating system or some other program.
Continue reading
The Element Doesn’t Exist
As a mid-level language, C has just as many positives as negatives with regards to accessing memory. One of the biggest negatives is C’s unflinching capability to access data that doesn’t exist.
Continue reading