1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

associativity of operators in C language

Discussion in 'Engineering Concepts' started by hitesh_best, Aug 3, 2007.

Thread Status:
Not open for further replies.
  1. hitesh_best

    hitesh_best New Member

    Joined:
    Aug 3, 2007
    Messages:
    4
    Likes Received:
    0
    Trophy Points:
    0
    Hello friends,

    I am following Let us C, 6th edition, by Yashavant Kanetkar,
    I have a problem understanding the concept of associativity of operators,

    I tried to find some good material on internet by searching in google but could not find much.

    Kanetkar writes,

    "Left to Right associativity means that the left operand must be unambiguous. Unambiguous in what sense? It must not be involved in evaluation of any other sub-expression. Similarly in case of Right to Left associativity the right operator must be unambiguous."

    I could not understand what it means by "being unambiguous".

    There is a expression,


    Code:
     g = 10/5/2/1      
    
    Now we have to find the order in whcih the calculations will take place
    In his solution book, he gives the solution.

    Code:
        operator            left                           Right                         Remark
         
            /               10                        5 or 5/2/1               Left operand is unambiguous,
                                                                                                Right is not
    
            /               10/5 or 5                   2 or 2/1             Left operand is unambiguous,
                                                                                                 Right is not
    
            /               10/5/2 or 2                1                       Right operand is unambiguous,
                                                                                                Left is not
    
    Now in first row and right column why he writes only two operands that are possible: 5 or 5/2/1 why also not 5/2


    In the second row in the remark column why he says that left operand is unambiguous when there are two operands that are possible i.e. 10/5 or 5.


    Thanks a lot
     
  2. hitesh_best

    hitesh_best New Member

    Joined:
    Aug 3, 2007
    Messages:
    4
    Likes Received:
    0
    Trophy Points:
    0
    Friends, admitting my mistake I have started the same thread in C/C++ forum . I think this thread should be there. Please forgive me for this.
     
  3. shabbir

    shabbir Administrator Staff Member

    Joined:
    Jul 12, 2004
    Messages:
    15,292
    Likes Received:
    365
    Trophy Points:
    83
    Duplicate of associativity of operators in C language . Thread closed.
     
Thread Status:
Not open for further replies.

Share This Page