Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Lập Trình C

Một bài toán C sử dụng toán tử dán token


Chúng ta sẽ xem một câu đố C. Giả sử có hai số 48 và 96. Ta phải thêm số đầu tiên vào sau số thứ hai. Kết quả sẽ là 9648. Nhưng không được dùng phép toán logic, số học, chuỗi, cũng không dùng hàm định sẵn. Làm sao?

Việc này dễ dàng nhờ toán tử dán token (##) trong C. Toán tử này là toán tử tiền xử lý, yêu cầu trình biên dịch nối hai token thành một chuỗi. Ta dùng nó trong định nghĩa macro.

Ví dụ

#include <stdio.h>
#define MERGE(x, y) y##x
main() {
    printf("%d", MERGE(48, 96));
}

Kết quả

9648