Cách Define trong C

Chào các bạn.

Mình có 4 biến ví dụ a , b, c , d.
Và mình define như sau :

#define VAR1 a
#define VAR2 b
#define VAR3 c
#define VAR4 d

Bây giờ mình cần define 1 macro là SET(x) để tương tác với mấy thằng VAR1,2,3,4 kia.
Vậy phải define thế nào nhỉ. Mục đích là
SET(1) ~ VAR1 ~ a.
SET(2) ~ VAR2 ~ b.

Thank cả nhà !

1 Like

a dùng dấu ## là được
SET(a) VAR##a
https://gcc.gnu.org/onlinedocs/cpp/Concatenation.html

Còn nếu a muốn define 1 macro mà bên trong có 1 macro nữa thì là không được

Tuy nhiên a có thể làm ntn:
SET(a) const int var##a = a

5 Likes

Cảm ơn bạn !
Đã OK nhé :slight_smile:

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?