2009-03-17 12 views

Odpowiedz

30

## łączy to, co przed ## z tym, co po nim. Więc w przykładzie robi ZEND_FN(foo) spowodowałoby odpowiedzi zif_foo

6

Echo RVV użytkownika.

Należy pamiętać, że podczas łączenia łańcuchów literowych mogą występować pewne niespójności między procesorami/kompilatorami. Niektóre będą wymagały ##

#define STR_CAT(s1, s2) s1 ## s2 

jak w

const char s[] = STR_CAT("concat", "enation") 

natomiast inne będą baulk na nią, a zamiast tego po prostu wymaga, że ​​dwa literały będzie łączony przez kompilator (w przeciwieństwie do przed- procesor), a więc wymagają

#define STR_CAT(s1, s2) s1 s2 

HTH