10
문자열을 문자열로 변환하지 않고 "text"
을 text
으로 변환해야하는 매크로 인수를 원한다고 가정합니다.C 매크로에서 따옴표를 제거 할 수있는 방법이 있습니까?
#define UN_STRINGIFY(x) /* some macro magic here */
이제이 매크로 문자열 화 (stringification)의 반대 것이 매크로는 인수
UN_STRINGIFY("text") // results in ----> text
에서 ""
을 제거합니다 전화 :
#define STRINGIFY(x) #x
하면이 가능한가, 아니면 매크로와 함께 연주하고 악의?
가능한 경우 수행하고 싶은 작업은 무엇입니까? – iammilind
그건 불가능합니다. 호기심에서 의도 한 용도는 무엇입니까? – dasblinkenlight
음, 일반적으로 stringify를 사용 하겠지만 일부 매크로를 리팩터링하고 실제로 호출 패턴을 변경하고 싶지는 않습니다. '#define THIS_MACRO (stringParam) const char * un ## stringParam = stringParam;'으로 변경 될 것입니다. – syvex