여기서 우리는 C 프로그래밍 언어 퍼즐 질문을 볼 것입니다. 두 개의 숫자 48과 96이 있다고 가정합니다. 두 번째 숫자 다음에 첫 번째 숫자를 더해야 합니다. 따라서 최종 결과는 9648과 같습니다. 그러나 논리, 산술, 문자열 관련 연산을 사용할 수 없으며 미리 정의된 함수도 사용할 수 없습니다. 어떻게 하면 될까요?
이것은 쉬워요. C에서 토큰 붙여넣기 연산자(##)를 사용하여 수행할 수 있습니다. 토큰 붙여넣기 연산자는 전처리기 연산자입니다. 두 개의 토큰을 하나의 문자열로 추가하거나 연결하기 위해 컴파일러에 명령을 보냅니다. 매크로 정의에서 이 연산자를 사용합니다.
예시
#include<stdio.h> #define MERGE(x, y) y##x main() { printf("%d", MERGE(48, 96)); }
출력
9648