-
n > 1
là so sánh luận lý, sẽ luôn có kết quả là true
(1
) hoặc false
(0
).
- Cho dù kiểu kiểu số được trả về thì vẫn đúng, vì kiểu bool trong C/C++ (và một số ngôn ngữ khác) tương đương với kiểu số: số bằng 0 là
false
, số khác không là true
.
Bản chất khi lưu trữ trong bộ nhớ thì giá trị false
lưu thành số 0
và true
sẽ lưu thành số 1
.
#include <iostream>
bool f1(int n){
// phép toán so sánh luận lý, trả về true khi n lớn hơn 1.
return n > 1;
}
bool f2(int n){
// trả về số, tự quy đổi sang kiểu luận lý, trả về true khi n khác 0
return n;
}
int main(){
std::cout << f1(0) << std::endl;
std::cout << f2(12) << std::endl;
return 0;
}