bug-bash
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: for ((i=0; i<3 && i!=1; i++))


From: Chet Ramey
Subject: Re: for ((i=0; i<3 && i!=1; i++))
Date: Mon, 12 Jan 2015 11:38:25 -0500
User-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:31.0) Gecko/20100101 Thunderbird/31.3.0

On 1/12/15 4:26 AM, l_j_f wrote:
> 1. bash version
> -sh-4.3# bash --version
> GNU bash, version 4.3.0(1)-release (arm-hisiv200-linux-gnu)
> Copyright (C) 2013 Free Software Foundation, Inc.
> License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
> This is free software; you are free to change and redistribute it.
> There is NO WARRANTY, to the extent permitted by law.
>  
> 2. the script
> #!/bin/bash
>  
> main() {
>         local idx
>         local current=1
>  
>         for ((idx=0; idx<3 && idx != current; idx++)); do
>                 echo $idx
>         done
> }
>  
> main "$@"
>  
> 3. the result
> -sh-4.3# ./test1.sh 
> 0
> # I think it should be
> 0
> 2

Why?  The for loop breaks when the condition tests false.


-- 
``The lyf so short, the craft so long to lerne.'' - Chaucer
                 ``Ars longa, vita brevis'' - Hippocrates
Chet Ramey, ITS, CWRU    chet@case.edu    http://cnswww.cns.cwru.edu/~chet/



reply via email to

[Prev in Thread] Current Thread [Next in Thread]