Ai giải thích hộ mình chỗ define này với
Define này dùng để làm gì
Trình biên dịch sẽ thay thế chỗ nào gọi đến rep(i, a, b)
bằng vòng lặp for
phía sau, như cách #define
được thực hiện thôi. Các tham số sẽ được thay thế một cách chính xác từ giá trị truyền vào.
#include <stdio.h>
#define f(i, a, b) for(int i = (a); i < (b); i++)
int main()
{
int x;
f(x, 0, 4){
printf("%d ", x);
}
return 0;
}
Sẽ tương đương với:
#include <stdio.h>
// #define f(i, a, b) for(int i = (a); i < (b); i++)
int main()
{
int x;
for(x = (0); x < (4); x++){
printf("%d ", x);
}
return 0;
}
Chạy thử:
4 Likes