Re[2]: Preprocessor
От: shura_mam  
Дата: 03.11.03 21:03
Оценка:
Здравствуйте, Павел Кузнецов, Вы писали:

ПК>Здравствуйте, 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...
Пока на собственное сообщение не было ответов, его можно удалить.