Tcl - Relational Operators



Following table shows all the relational operators supported by Tcl language. Assume variable A holds 10 and variable B holds 20, then −

Operator Description Example
== Checks if the values of two operands are equal or not, if yes then condition becomes true. (A == B) is not true.
!= Checks if the values of two operands are equal or not, if values are not equal then condition becomes true. (A != B) is true.
> Checks if the value of left operand is greater than the value of right operand, if yes then condition becomes true. (A > B) is not true.
< Checks if the value of left operand is less than the value of right operand, if yes then condition becomes true. (A < B) is true.
>= Checks if the value of left operand is greater than or equal to the value of right operand, if yes then condition becomes true. (A >= B) is not true.
<= Checks if the value of left operand is less than or equal to the value of right operand, if yes then condition becomes true. (A <= B) is true.

Example

Try the following example to understand all the relational operators available in Tcl language −

#!/usr/bin/tclsh

set a 21
set b 10

if { $a == $b } {
   puts "Line 1 - a is equal to b\n"
} else {
   puts "Line 1 - a is not equal to b\n" 
}
if { $a < $b } {
   puts "Line 2 - a is less than b\n"
} else {
   puts "Line 2 - a is not less than b\n"
}
if { $a > $b } {
   puts "Line 3 - a is greater than b\n"
} else {
   puts "Line 3 - a is not greater than b\n"
}
# Lets change value of a and b
set a 5
set b 20
if { $a <= $b } {
   puts "Line 4 - a is either less than or equal to  b\n"
}
if { $b >= $a } {
   puts "Line 5 - b is either greater than  or equal to a\n"
}

When you compile and execute the above program it produces the following result −

Line 1 - a is not equal to b

Line 2 - a is not less than b

Line 3 - a is greater than b

Line 4 - a is either less than or equal to  b

Line 5 - b is either greater than  or equal to a
tcl_operators.htm
Advertisements