Хотите использовать __ DATE __ и __ TIME __ как целое число для предоставления автоматической версии моего кода во время компиляции.
#define STRINGIZER(arg) #arg
#define STR_VALUE(arg) STRINGIZER(arg)
#define DATE_as_int_str useD(__DATE__) // What can be done ?
#define TIME_as_int_str useT(__TIME__) // What can be done ?
#define VERSION 1.4
#define COMPLETE_VERSION STR_VALUE(VERSION) "." DATE_as_int_str "." TIME_as_int_str
и получите COMPLETE_VERSION
в виде строки в const unsigned char []
.
const unsigned char completeVersion[] = ?? COMPLETE_VERSION;
Должен что-то вывести 1.4.1432.2234.
Одним из возможных решений может быть, но оно не работает: convert-date -to-unsigned-int
В контексте времени компиляции convertint-date-and-time-string-to-just-integer-in-c Можно сослаться на расширение-и-строку-как-получить-марко-имя-не-его-значение