(.text+0x0): multiple definition of `printheader()’

0
340

The function printheader() is defined in the C99 standard (ISO/IEC 9899:1999) and the C11 standard (C99). It is a function that prints a newline after every line. It is a macro.

That is basically correct. It does print a newline at end of line. So it’s not a function, it is a macro. But it is a macro, so it prints a newline at end of line, not inside the string that it is called on.

This is how I got confused. I thought that printheader() is a function that is called on every line of text. I was wrong. It is not. It is a macro defined in the C standard IEC 98991999, which was adopted by the C11 standard. The name printheader is actually defined by the C11 standard as a macro that is called on every line of text.

That’s what I thought, and what you thought, too. The two definitions of printheader are actually a single definition. That’s a macro, not a function.

The first definition is an ordinary macro that allows us to define a macro that calls itself recursively. The second definition is a macro that is called on every line of text. I will not go into the details of what this macro does, but I’ll just show you how it is defined.

printheader is defined as a macro that is called on every line of text. Like the C11 standard, this is a macro that is called on every line of text. The two definitions of printheader are actually a single definition. Thats a macro, not a function.

There is something to be said about macros. They allow you to redefine functions without having to remember all the code you need to write. And they also allow you to redefine macros (or subroutines in the case of C). I’ve taken a few liberties with the code above. The main thing is I’ve replaced the `printheader` function with the `printheader` function that is defined inside the `printheader` macro.

A function that functions inside a function, as in function printheader(), and returns a value, even if it doesn’t exist.

LEAVE A REPLY

Please enter your comment!
Please enter your name here