Компиляторы
C не обязательно способны встраивать функции во время соединения.Поэтому, если вы действительно хотите дать компилятору наилучшие шансы для включения функции, необходимо определить функцию в каждом TU, который ее использует.Так что это должно быть определено в заголовочном файле.inline
позволяет программе иметь несколько определений функции в разных TU.
Кроме того, эта функция помечена static
, что дает ей внутреннюю связь и означает, что у каждого TU есть своя отдельная копия функции..