Иногда требуются отдельные числа номера версии, иногда номер версии в виде строки.
Чтоб задавать его один раз сделал так:
#define VER_1 0
#define VER_2 0
#define VER_3 1
#define VER_S dev
#define QUOTE(x) #x
#define VERSION_(A,B,C,S) QUOTE(A.B.C.S)
#define VERSION VERSION_(VER_1,VER_2,VER_3,VER_S)
int main()
{
puts(VERSION);
return 0;
}
Но меня терзают смутные сомнения — может можно как-то проще?