01/10/2018, 00:15
Cần thông tin tài liệu về define dynamic variable (chắc thế)
Bữa nay mình bắt gặp đoạn code thế này:
#define STRLEN_DEC(src_char)
size_t src_char##_len = strlen(src_char) + 1
Khá là lạ mắt. Nếu mình dùng nó thế này:
char* arg = "123";
STRLEN_DEC(arg);
Thì sau quá trình preprocess, code sẽ xuất hiện khai báo biến số là:
size_t arg_len = strlen(arg) + 1;
Có ai biết chính xác cái này ở trong #define gọi là gì không, mình không biết tìm kiếm về nó thế nào nữa.
Bài liên quan
This:
https://gcc.gnu.org/onlinedocs/cpp/Concatenation.html
Còn #NAME ở link trên gọi là cái này:
https://gcc.gnu.org/onlinedocs/cpp/Stringification.html