Re: Preprocessor
От: Павел Кузнецов  
Дата: 03.11.03 20:47
Оценка: 3 (1)
Здравствуйте, shura_mam, Вы писали:

_>static const char* s_szProgVer = "Program version 1.0";

_>но так, чтобы препроцессор сам формировал строку "1.0" исходя из PROG_VER_MAJOR и PROG_VER_MINOR.

#include <stdio.h>

#define PROG_VER_MAJOR 1
#define PROG_VER_MINOR 0

#define VERSION2(prefix,major,minor) prefix###major"."###minor
#define VERSION1(prefix,major,minor) VERSION2(prefix,major,minor)
#define VERSION(prefix) VERSION1(prefix, PROG_VER_MAJOR, PROG_VER_MINOR)

int main()
{
  printf(VERSION("Program version "));
  return 0;
}
Легче одурачить людей, чем убедить их в том, что они одурачены. — Марк Твен
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.