Afficher un message
Vieux 28/10/2006, 14h00   #5
Janis Papanagnou
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: return values from a function call

Dave Kelly wrote:
> paintedjazz@gmail.com wrote:
>
>> If I use the result of a function call in a condtional statement,
>> is it possible to return one of three possible values or is it just
>> true or false or a 0 or 1 status?
>>
>> I want to test if a number is greater than, equal to or less than
>> another number.
>> Thus, the function should be something like:
>>
>> if myfunction $num $another_num # return value is probably only 0 or
>> 1
>> then
>> echo $num is greater than
>> else
>> echo $num is less than
>> fi
>>
>> But I need to know if $num and $another_num are equal too.
>>
>> Can I just have the function return a value (other than the status)
>> that could be tested?
>> How could I do that? Thx for your .
>>

>
> I don't know if this would work, but I'd type it in and test it.
>
> if ( a < b ) ? -1 : ( a == b ) ? 0 : 1 ;
>
> Or is this one of those thing that is NOT portable anywhere except
> inside my head?


Don't know which shell supports your syntax. In ksh93 you can write...

x=$(( (a < b)? -1 : (a == b)? 0 : 1 ))


Janis

>
> Dave

  Réponse avec citation
 
Page generated in 0,06025 seconds with 9 queries