Question

As I know, C inline function body should be defined in .h file because it causes an error 'function-name used but never defined" if body defined in .c file.

Is this the regular way? Or how to define inline function body in .c file?

Was it helpful?

Solution

Each .c file is compiled independently into .o output. If you define the inline function in a .c file, other source files cannot see such function, so that cannot be inlined.

Therefore the inline function should be in the .h file to allow the code to be shared.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top