EXPRESSIONS IN C








ARITHMETIC EXPRESSIONS

     AN ARITHMETIC EXPRESSION IS COMBINATION OF VARIABLE, CONSTANTS AND OPERATORS ARRANGED AS PER THE SYNTAX OF THE PROGRAMMING LANGUAGE.





EXAMPLES :-   

3X^2 + 2X + 1 ------>  3 * X * X * 2 * X + 1

( A B / C )   --------->  A * B / C

( M + N ) * ( X + Y )   ------>  ( M + N ) * ( X + Y )

       
     ALL THE EXPRESSION IN C HAVE THE COMMON FORM.
  
  
 VARIABLE = EXPRESSION;  

  THE EXPRESSION IS EVALUATED FIRST AND THE RESULT THEN PLACES IN THE VARIABLE.

EXAMPLE  :-  X = A * B / C;



PRECEDENCE OF ARITHMETIC OPERATORS 

  AN ARITHMETIC EXPRESSION WITHOUT PARENTHESES WILL BE EVALUATED FROM LEFT TO RIGHT.THERE ARE TWO TYPES OF OPERATOR THEY ARE,






  1.  HIGH PRIORITY
  2.  LOW  PRIORITY
     THE EVALUATION PROCEDURE INCLUDES TWO PASSES FROM LEFT TO RIGHT. IF THE FIRST PASS THE HIGH PRIORITY OPERATORS ARE APPLIED. THEN THE SECOND PASS THE LOW PRIORITY PASS ARE APPLIED.





EXAMPLE  :-  

                      X = A - B / C * 2 - 1

       WHERE  A = 9, B = 12, C = 3

        THEN    X = 9 - 12 / 3 + 3 * 2 -1

                      X = 9 - 4 + 6 - 1 
               
                      X = 5 + 5 = 10

     THE ODER OF EVALUATION CAN BE CHANGED BY INTRODUCING PARENTHESES INTO AN EXPRESSION.

EXAMPLE  :-   

THE ABOVE EXPRESSION  9 - 12 / 3 + 3 * 2 - 1  IS ALTERED TO 

X = 9 - 12 /  ( 3 + 3 ) * ( 2 - 1 )

 WHEN EVER PARENTHESES ARE USED, THE EXPRESSION WITHIN THE 
 PARENTHESES HAVE THE HIGHEST PRIORITY. THEN THE RESULT OF THE 
 EXPRESSION BECOMES,

 9 - 12 / ( 3 + 3 ) * ( 2 - 1 )

 9 - 12 / 6 * 1

 9 - 2 * 1

9 - 2

= 7



TYPE CONVERSION IN EXPRESSION


    C AUTOMATICALLY CONVERTS ANY INTERMEDIATE VALUES IN THE PROPER TIME. IN ORDER TO SAVE SIGNIFICANCE OF VARIABLE VALUES.




  
RULES OF TYPE CONVERSION

  •  IF ONE OF THE OPERAND IS LONG DOUBLE THEN THE OTHER WILL BE CONVERTED TO LONG DOUBLE AND THE RESULT WILL BE LONG DOUBLE.




  •  IF ONE OF THE OPERAND IS DOUBLE THEN THE OTHER WILL BE CONVERTED TO DOUBLE AND THE RESULT WILL BE DOUBLE.
  • IF ONE OF THE OPERAND IS FLOAT THEN THE OTHER WILL BE CONVERTED TO FLOAT AND THE RESULT WILL BE FLOAT.
  
    THE FINAL RESULT OF THE EXPRESSION IS CONVERTED THE TYPE OF VARIABLE ON THE LEFT OF THE ASSIGNMENT SIGN ' = ' . BEFORE ASSIGNING THE VALUE TO IT. DURING THE FINAL ASSIGNMENT 3 THINGS MAY HAPPEN.
  •  FLOAT TO INT CAUSES TRUNCATION OF THE FRACTIONAL PART.
  •  DOUBLE TO FLOAT CAUSES ROUNDING OF DIGITS.
  •  LONG INT TO INT CAUSES DROPPING OF THE EXCESS HIGHER ORDER BITS.
ALL THIS RULES ARE APPLICABLE  TO IMPLICIT TYPE CONVERSION.


IMPLICIT TYPE CONVERSION

  C PERMITS MIXING OF CONSTANTS AND VARIABLES OF DIFFERENT TYPES IN AN EXPRESSION. C AUTOMATICALLY CONVERTS ANY INTERMEDIATE VALUE TO THE PROPER TYPE SO THAT THE EXPRESSION CAN BE EVALUATED WITHOUT LOOSING ANY SIGNIFICANCE. THIS AUTOMATIC CONVERSION IS KNOWN AS IMPLICIT TYPE CONVERSION.




EXPLICIT TYPE CONVERSION

    THERE ARE SITUATIONS IN WHICH WE WANT FORCE A TYPE CONVERSION. THE PROCESS OF SUCH CONVERSION IS KNOWN AS EXPLICIT TYPE CONVERSION OR TYPE CASTING. THE GENERAL FORM OF CASTING IS,
   
   ( TYPE_NAME ) EXPRESSION  ; 


EXAMPLE  :-  X = ( INT ) 7.5; 
                       INT C = ( INT ) A * B;
                       WHERE  A = 1.5 AND B = 3




















FOR MORE C PROGRAMS AND TUTORIALS PLEASE SUBSCRIBE MY YOUTUBE CHANNEL








CODE MASTER
















Comments