Sobrecarga de operador em C

Estou tentando sobrecarregar alguns operadores:

/* Typedef is required for operators */
typedef int Colour;

/* Operators */
Colour operator+(Colour colour1, Colour colour2);
Colour operator-(Colour colour1, Colour colour2);
Colour operator*(Colour colour1, Colour colour2);
Colour operator/(Colour colour1, Colour colour2);

Eu recebo esse erro para cada tentativa de sobrecarga:

expected '=', ',', ';', 'asm' or '__attribute__' before '+' token

Não consigo encontrar boa documentação sobre sobrecarga do operador. A pesquisa no Google resulta em tutoriais em C ++ que usam classes. Em C não há classes. Alguém pode me ajudar? Obrigado.

questionAnswers(5)

yourAnswerToTheQuestion