SlideShare ist ein Scribd-Unternehmen logo
1 von 20
Operators and
Expressions


 Name : Vishaljot Kaur Thind
 Section : N2
 Roll No : 115335




                                1
Contents
 Objective
 Introduction
 Arithmetic operations
 Arithmetic expressions
 Relational operators
 Logical operators
 Assignment operators
 Increment and decrement operators
 Conditional operators
 Type conversions in expressions

                                      2
Objectives
♄ To be able to construct and evaluate
  expressions.
♄ To master operator precedence and
  associativity
♄ To understand implicit type conversion and
  explicit type conversion.




                                               3
3.1 Introduction
 An operator is a symbol that tells the computer to
  perform certain manipulations.
 An expression is a sequence of operands and operators
  that reduces to a single value.
 C operators can be classified into a number of
  categories.
    ◩   Arithmetic operators
    ◩   Relational operators
    ◩   Logical operators
    ◩   Assignment operators
    ◩   Increment and decrement operators
    ◩   Conditional operators
    ◩   Bitwise operators
    ◩   Special operators

                                                      4
5


3.2          Arithmetic operators
   The arithmetic operators in C

      Operator                      meaning
         +        Addition or unary plus
         -        Subtraction or unary minus
         *        Multiplication
         /        Division
         %        modulo division
6


3.2         Arithmetic operators
   Note:,
    ◩ Integer division truncates remainder
    ◩ The % operator cannot be applied to a float or
      double.
    ◩ The precedence of arithmetic operators
       Unary + or -
      * / %
      + -
7


3.10           Arithmetic expressions
   An arithmetic expression is a combination of variables,
    constants, and operators.
   For example,
   a*b-c           a*b-c
   (m+n)(x+y)             (m+n)*(x+y)
   ax2+bx+c        a*x*x+b*x+c
8


3.3 Relational Operators
‱ The relational operators in C are :

      Operator                    Meaning
         <           less that
        <=           less than or equal to
         >           greater than
        >=           greater than or equal to
        ==           equal to
        !=           not equal to
Relational Operators
   A relational expression yields a value
    of 1 or 0.
    ◩5<6                  1
    ◩ -34 + 8 > 23 - 5        0
    ◩ if a=3, b=2, c =1; then a > b > c is ?


   the associativity of relational
    operators is
    left  right
                                               9
3.4 Logical operators
   C has the following three logical
    operators
    ◩ && meaning logical and
    ◩ || meaning logical or
    ◩ ! meaning logical not ( unary operator )
   Expressions connected by && or || are
    evaluated left to right, and evaluation
    stops as soon as the truth or
    falsehood of the result is known.
                                                 10
3.5 Assignment operators
   The use of shorthand assignment
    operators has three advantages:
    ◩ 1. What appears on the left-hand side
      need not be repeated and therefore it
      becomes easier to write.
    ◩ 2. The statement is more concise and
      easier to read.
    ◩ 3. The statement is more efficient.



                                              11
3.6 Increment and decrement
operators
 C provides two unusual operators for
  incrementing and decrementing
  variables.
 The increment operator ++ adds 1 to its
  operand, while the decrement operator --
  subtracts 1.
 The unusual aspect is that ++ and -- may
  be used either as prefix operators
  (before the variable, as in ++n), or postfix
  operators (after the variable: n++).
 In both cases, the effect is to increment
  n. But the expression ++n increments n
  before its value is used, while n++
  increments n after its value has been
  used.
                                             12
   The increment and decrement operators
    can be used in complex statements.
    Example:
                m=n++ -j +10;

   Consider the expression
                  m = - n++ ;
   The precedence of ++ and – operators
    are the same as those of unary + and -.
   The associatively of them is right to left.
   m = - n++; is equivalent to m = - (n++)
                                                  13
3.7 Conditional operator
 a ternary operator pair “? : ” is
  available in C to construct conditional
  expressions of the form
             expr1 ? expr2 : expr3
 the expression expr1 is evaluated first.
  If it is non-zero (true), then the
  expression expr2 is evaluated, and
  that is the value of the conditional
  expression. Otherwise expr3 is
  evaluated, and that is the value. Only
  one of expr2 and expr3 is evaluated.
                                         14
   z = (a > b) ? a : b;   /* z = max(a, b) */




                                             15
3.9 Special operators
 1. The Comma Operator
 The comma operator can be used to link the
  related expressions together. A comma-linked
  list of expressions is evaluated left to right
  and the value of right-most expression is the
  value of the combined expression. For
  example, the statement
 value = (x=10, y=5, x+y);
 first assigns the value 10 to x, then assigns 5
  to y, and finally assigns 15 to value. Since
  comma operator has the lowest precedence
  of all operators, the parentheses are
  necessary.
                                                16
3.14 Type conversions in
expressions
 1. Implicit Type Conversion
 C permits mixing of constants and
  variables of different types in an
  expression. C automatically converts any
  intermediate values to the proper type so
  that the expression can be evaluated
  without loosing any significance. This
  automatic conversion is known as
  implicit type conversion.
 The rule of type conversion: the lower
  type is automatically converted to the
  higher type.
                                          17
3.13 Some Computational
Problems
   When expressions include real values,
    then it is important to take necessary
    precautions to guard against certain
    computational errors. For example,
    consider the following statements:
    ◩ a = 1.0 / 3.0;
    ◩ b = a * 3.0;
 There is no guarantee that the value of b
  will equal 1.
 Another problem is division by zero.
 The third problem is to avoid overflow
  and underflow errors.
                                              18
3.15   Operator precedence
and Associativity
   Rules of Precedence and Associativity
    ◩ (1)Precedence rules decides the order in which
      different operators are applied.
    ◩ (2)Associativity rule decide the order in which
      multiple occurrences of the same level operator
      are applied.
   Table3.8 on page71 shows the summary of C
    Operators.
   for example,
   a = i +1== j || k and 3 != x

                                                        19
   THANKS
             20

Weitere Àhnliche Inhalte

Was ist angesagt?

Presentation on C++ Programming Language
Presentation on C++ Programming LanguagePresentation on C++ Programming Language
Presentation on C++ Programming Languagesatvirsandhu9
 
classes and objects in C++
classes and objects in C++classes and objects in C++
classes and objects in C++HalaiHansaika
 
08 c++ Operator Overloading.ppt
08 c++ Operator Overloading.ppt08 c++ Operator Overloading.ppt
08 c++ Operator Overloading.pptTareq Hasan
 
Object oriented programming concepts
Object oriented programming conceptsObject oriented programming concepts
Object oriented programming conceptsrahuld115
 
Operators and Expressions in Java
Operators and Expressions in JavaOperators and Expressions in Java
Operators and Expressions in JavaAbhilash Nair
 
Type Conversion, Precedence and Associativity
Type Conversion, Precedence and AssociativityType Conversion, Precedence and Associativity
Type Conversion, Precedence and AssociativityAakash Singh
 
C fundamental
C fundamentalC fundamental
C fundamentalSelvam Edwin
 
INLINE FUNCTION IN C++
INLINE FUNCTION IN C++INLINE FUNCTION IN C++
INLINE FUNCTION IN C++Vraj Patel
 
Operators and expressions in C++
Operators and expressions in C++Operators and expressions in C++
Operators and expressions in C++Neeru Mittal
 
C Programming: Structure and Union
C Programming: Structure and UnionC Programming: Structure and Union
C Programming: Structure and UnionSelvaraj Seerangan
 
Exception handling c++
Exception handling c++Exception handling c++
Exception handling c++Jayant Dalvi
 
Operators in c programming
Operators in c programmingOperators in c programming
Operators in c programmingsavitamhaske
 
Datatype in c++ unit 3 -topic 2
Datatype in c++ unit 3 -topic 2Datatype in c++ unit 3 -topic 2
Datatype in c++ unit 3 -topic 2MOHIT TOMAR
 
Command line arguments
Command line argumentsCommand line arguments
Command line argumentsAshok Raj
 
Control statements in c
Control statements in cControl statements in c
Control statements in cSathish Narayanan
 
Templates in C++
Templates in C++Templates in C++
Templates in C++Tech_MX
 

Was ist angesagt? (20)

C – operators and expressions
C – operators and expressionsC – operators and expressions
C – operators and expressions
 
Presentation on C++ Programming Language
Presentation on C++ Programming LanguagePresentation on C++ Programming Language
Presentation on C++ Programming Language
 
classes and objects in C++
classes and objects in C++classes and objects in C++
classes and objects in C++
 
08 c++ Operator Overloading.ppt
08 c++ Operator Overloading.ppt08 c++ Operator Overloading.ppt
08 c++ Operator Overloading.ppt
 
C# operators
C# operatorsC# operators
C# operators
 
Object oriented programming concepts
Object oriented programming conceptsObject oriented programming concepts
Object oriented programming concepts
 
Operators and Expressions in Java
Operators and Expressions in JavaOperators and Expressions in Java
Operators and Expressions in Java
 
Type Conversion, Precedence and Associativity
Type Conversion, Precedence and AssociativityType Conversion, Precedence and Associativity
Type Conversion, Precedence and Associativity
 
C fundamental
C fundamentalC fundamental
C fundamental
 
INLINE FUNCTION IN C++
INLINE FUNCTION IN C++INLINE FUNCTION IN C++
INLINE FUNCTION IN C++
 
Operator.ppt
Operator.pptOperator.ppt
Operator.ppt
 
Operators and expressions in C++
Operators and expressions in C++Operators and expressions in C++
Operators and expressions in C++
 
Operators
OperatorsOperators
Operators
 
C Programming: Structure and Union
C Programming: Structure and UnionC Programming: Structure and Union
C Programming: Structure and Union
 
Exception handling c++
Exception handling c++Exception handling c++
Exception handling c++
 
Operators in c programming
Operators in c programmingOperators in c programming
Operators in c programming
 
Datatype in c++ unit 3 -topic 2
Datatype in c++ unit 3 -topic 2Datatype in c++ unit 3 -topic 2
Datatype in c++ unit 3 -topic 2
 
Command line arguments
Command line argumentsCommand line arguments
Command line arguments
 
Control statements in c
Control statements in cControl statements in c
Control statements in c
 
Templates in C++
Templates in C++Templates in C++
Templates in C++
 

Ähnlich wie Operators and expressions

Operator in C language
Operator in C languageOperator in C language
Operator in C languageKanhaiyaSharma52
 
Programming for Problem Solving
Programming for Problem SolvingProgramming for Problem Solving
Programming for Problem SolvingKathirvel Ayyaswamy
 
Report on c
Report on cReport on c
Report on cjasmeen kr
 
Basic c operators
Basic c operatorsBasic c operators
Basic c operatorsdishti7
 
Unit ii chapter 1 operator and expressions in c
Unit ii chapter 1 operator and expressions in cUnit ii chapter 1 operator and expressions in c
Unit ii chapter 1 operator and expressions in cSowmya Jyothi
 
Chapter 5 - Operators in C++
Chapter 5 - Operators in C++Chapter 5 - Operators in C++
Chapter 5 - Operators in C++Deepak Singh
 
This slide contains information about Operators in C.pptx
This slide contains information about Operators in C.pptxThis slide contains information about Operators in C.pptx
This slide contains information about Operators in C.pptxranaashutosh531pvt
 
C++ revision add on till now
C++ revision add on till nowC++ revision add on till now
C++ revision add on till nowAmAn Singh
 
C++ revision add on till now
C++ revision add on till nowC++ revision add on till now
C++ revision add on till nowAmAn Singh
 
Operators and it's type
Operators and it's type Operators and it's type
Operators and it's type Asheesh kushwaha
 
operator (1).pptx
operator (1).pptxoperator (1).pptx
operator (1).pptxlaptophp39
 
[ITP - Lecture 06] Operators, Arithmetic Expression and Order of Precedence
[ITP - Lecture 06] Operators, Arithmetic Expression and Order of Precedence[ITP - Lecture 06] Operators, Arithmetic Expression and Order of Precedence
[ITP - Lecture 06] Operators, Arithmetic Expression and Order of PrecedenceMuhammad Hammad Waseem
 
Constructor and destructors
Constructor and destructorsConstructor and destructors
Constructor and destructorsdivyalakshmi77
 

Ähnlich wie Operators and expressions (20)

Operator in C language
Operator in C languageOperator in C language
Operator in C language
 
Programming for Problem Solving
Programming for Problem SolvingProgramming for Problem Solving
Programming for Problem Solving
 
Types of Operators in C
Types of Operators in CTypes of Operators in C
Types of Operators in C
 
Report on c
Report on cReport on c
Report on c
 
Basic c operators
Basic c operatorsBasic c operators
Basic c operators
 
Unit ii chapter 1 operator and expressions in c
Unit ii chapter 1 operator and expressions in cUnit ii chapter 1 operator and expressions in c
Unit ii chapter 1 operator and expressions in c
 
Chapter 5 - Operators in C++
Chapter 5 - Operators in C++Chapter 5 - Operators in C++
Chapter 5 - Operators in C++
 
This slide contains information about Operators in C.pptx
This slide contains information about Operators in C.pptxThis slide contains information about Operators in C.pptx
This slide contains information about Operators in C.pptx
 
c programming2.pptx
c programming2.pptxc programming2.pptx
c programming2.pptx
 
Opeartor &amp; expression
Opeartor &amp; expressionOpeartor &amp; expression
Opeartor &amp; expression
 
C++ revision add on till now
C++ revision add on till nowC++ revision add on till now
C++ revision add on till now
 
C++ revision add on till now
C++ revision add on till nowC++ revision add on till now
C++ revision add on till now
 
Operators and it's type
Operators and it's type Operators and it's type
Operators and it's type
 
Coper in C
Coper in CCoper in C
Coper in C
 
Operators
OperatorsOperators
Operators
 
Operators in C Programming
Operators in C ProgrammingOperators in C Programming
Operators in C Programming
 
operator (1).pptx
operator (1).pptxoperator (1).pptx
operator (1).pptx
 
[ITP - Lecture 06] Operators, Arithmetic Expression and Order of Precedence
[ITP - Lecture 06] Operators, Arithmetic Expression and Order of Precedence[ITP - Lecture 06] Operators, Arithmetic Expression and Order of Precedence
[ITP - Lecture 06] Operators, Arithmetic Expression and Order of Precedence
 
Theory3
Theory3Theory3
Theory3
 
Constructor and destructors
Constructor and destructorsConstructor and destructors
Constructor and destructors
 

KĂŒrzlich hochgeladen

08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍾 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍾 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍾 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍾 8923113531 🎰 Avail...gurkirankumar98700
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 

KĂŒrzlich hochgeladen (20)

08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍾 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍾 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍾 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍾 8923113531 🎰 Avail...
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 

Operators and expressions

  • 1. Operators and Expressions  Name : Vishaljot Kaur Thind  Section : N2  Roll No : 115335 1
  • 2. Contents  Objective  Introduction  Arithmetic operations  Arithmetic expressions  Relational operators  Logical operators  Assignment operators  Increment and decrement operators  Conditional operators  Type conversions in expressions 2
  • 3. Objectives ♄ To be able to construct and evaluate expressions. ♄ To master operator precedence and associativity ♄ To understand implicit type conversion and explicit type conversion. 3
  • 4. 3.1 Introduction  An operator is a symbol that tells the computer to perform certain manipulations.  An expression is a sequence of operands and operators that reduces to a single value.  C operators can be classified into a number of categories. ◩ Arithmetic operators ◩ Relational operators ◩ Logical operators ◩ Assignment operators ◩ Increment and decrement operators ◩ Conditional operators ◩ Bitwise operators ◩ Special operators 4
  • 5. 5 3.2 Arithmetic operators  The arithmetic operators in C Operator meaning + Addition or unary plus - Subtraction or unary minus * Multiplication / Division % modulo division
  • 6. 6 3.2 Arithmetic operators  Note:, ◩ Integer division truncates remainder ◩ The % operator cannot be applied to a float or double. ◩ The precedence of arithmetic operators  Unary + or - * / % + -
  • 7. 7 3.10 Arithmetic expressions  An arithmetic expression is a combination of variables, constants, and operators.  For example,  a*b-c  a*b-c  (m+n)(x+y)  (m+n)*(x+y)  ax2+bx+c  a*x*x+b*x+c
  • 8. 8 3.3 Relational Operators ‱ The relational operators in C are : Operator Meaning < less that <= less than or equal to > greater than >= greater than or equal to == equal to != not equal to
  • 9. Relational Operators  A relational expression yields a value of 1 or 0. ◩5<6 1 ◩ -34 + 8 > 23 - 5 0 ◩ if a=3, b=2, c =1; then a > b > c is ?  the associativity of relational operators is left  right 9
  • 10. 3.4 Logical operators  C has the following three logical operators ◩ && meaning logical and ◩ || meaning logical or ◩ ! meaning logical not ( unary operator )  Expressions connected by && or || are evaluated left to right, and evaluation stops as soon as the truth or falsehood of the result is known. 10
  • 11. 3.5 Assignment operators  The use of shorthand assignment operators has three advantages: ◩ 1. What appears on the left-hand side need not be repeated and therefore it becomes easier to write. ◩ 2. The statement is more concise and easier to read. ◩ 3. The statement is more efficient. 11
  • 12. 3.6 Increment and decrement operators  C provides two unusual operators for incrementing and decrementing variables.  The increment operator ++ adds 1 to its operand, while the decrement operator -- subtracts 1.  The unusual aspect is that ++ and -- may be used either as prefix operators (before the variable, as in ++n), or postfix operators (after the variable: n++).  In both cases, the effect is to increment n. But the expression ++n increments n before its value is used, while n++ increments n after its value has been used. 12
  • 13.  The increment and decrement operators can be used in complex statements. Example: m=n++ -j +10;  Consider the expression m = - n++ ;  The precedence of ++ and – operators are the same as those of unary + and -.  The associatively of them is right to left.  m = - n++; is equivalent to m = - (n++) 13
  • 14. 3.7 Conditional operator  a ternary operator pair “? : ” is available in C to construct conditional expressions of the form expr1 ? expr2 : expr3  the expression expr1 is evaluated first. If it is non-zero (true), then the expression expr2 is evaluated, and that is the value of the conditional expression. Otherwise expr3 is evaluated, and that is the value. Only one of expr2 and expr3 is evaluated. 14
  • 15.  z = (a > b) ? a : b; /* z = max(a, b) */ 15
  • 16. 3.9 Special operators  1. The Comma Operator  The comma operator can be used to link the related expressions together. A comma-linked list of expressions is evaluated left to right and the value of right-most expression is the value of the combined expression. For example, the statement  value = (x=10, y=5, x+y);  first assigns the value 10 to x, then assigns 5 to y, and finally assigns 15 to value. Since comma operator has the lowest precedence of all operators, the parentheses are necessary. 16
  • 17. 3.14 Type conversions in expressions  1. Implicit Type Conversion  C permits mixing of constants and variables of different types in an expression. C automatically converts any intermediate values to the proper type so that the expression can be evaluated without loosing any significance. This automatic conversion is known as implicit type conversion.  The rule of type conversion: the lower type is automatically converted to the higher type. 17
  • 18. 3.13 Some Computational Problems  When expressions include real values, then it is important to take necessary precautions to guard against certain computational errors. For example, consider the following statements: ◩ a = 1.0 / 3.0; ◩ b = a * 3.0;  There is no guarantee that the value of b will equal 1.  Another problem is division by zero.  The third problem is to avoid overflow and underflow errors. 18
  • 19. 3.15 Operator precedence and Associativity  Rules of Precedence and Associativity ◩ (1)Precedence rules decides the order in which different operators are applied. ◩ (2)Associativity rule decide the order in which multiple occurrences of the same level operator are applied.  Table3.8 on page71 shows the summary of C Operators.  for example,  a = i +1== j || k and 3 != x 19
  • 20.  THANKS 20