#include <stdio.h>
volatile int i;
int main()
{
int c;
for (i = 0; i < 3; i++)
{
c = i &&& i;
printf("%d\n", c);
}
return 0;
}
Đầu ra của chương trình trên được biên dịch bằng cách sử dụng gcclà
0
1
1
Với tùy chọn -Wallhoặc -Waddress, gccđưa ra cảnh báo:
warning: the address of ‘i’ will always evaluate as ‘true’ [-Waddress]
Làm thế nào cđược đánh giá trong chương trình trên?
while (i &&& i <-- j) {}.
i && (&i)không? Thật thú vị khi tôi không thể tìm thấy một bài viết trùng lặp trên SO.