ExpertiDict

C · Intermediário · Inglês · Técnico

inline

/ˈɪn.laɪn/palavra-chave

Sugestão ao compilador para expandir a função no ponto de chamada. Desde o C99, uma função inline sem static segue regras próprias de definição que podem causar erro de ligação.

Onde usar

Funções curtas em headers costumam ser static inline para evitar erros de símbolo indefinido ou duplicado. É diferente do C++, onde inline sozinho já basta.

Em código

/* util.h */
static inline int max2(int a, int b) {
  return a > b ? a : b;
}

Exemplos

Make it static inline and put it in the header.

Faça static inline e coloque no header.

Plain inline gave me an undefined reference at link time.

Só inline me deu um undefined reference na hora de ligar.

Cuidado

Colocar só inline em um header esperando o comportamento do C++: em C, sem static ou uma definição externa, o linker pode reclamar.

Sinônimos

função expandida

Veja também

Todos os termos de C