如何深入掌握C语言操作符及表达式求值(详解)(二)

简介: 本文章主要讲解点:​​​​​​​各种操作符的介绍 表达式求值

关系操作符


  • >
  • >=
  • <
  • <=
  • !=       用于测试“不相等”
  • ==      用于测试“相等”

注意: 在编程的过程中== 和=非常容易混淆写错,而造成错误

逻辑操作符


  • &&     逻辑与
  • ||        逻辑或


区分逻辑与和按位与       区分逻辑或和按位或

1. 1&2----->0
2. 1&&2---->1
3. 1|2----->3
4. 1||2---->1

条件操作符

exp1 ? exp2 : exp3

这是一个三目操作符

当exp1的值为真时,执行exp2表达式,反之,执行exp3表达式

求a,b中最大值
int max = a>b ? a : b;

逗号表达式


exp1,exp2,exp3,...,expN

逗号表达式:就是用逗号隔开的多个表达式

逗号表达式,从左向右依次执行整个表达式的结果是最后一个表达式的结果

下标引用、函数调用和结构成员


[ ] 下标引用操作符 操作数

  • 一个数组名 + 一个索引值(经常与数组一起使用)
 int arr[10];//创建数组
 arr[9] = 10;//实用下标引用操作符
 [ ]的两个操作数是arr和9

( ) 函数调用操作符

  • 接受一个或者多个操作数:第一个操作数是函数名,剩余的操作数就是传递给函数的参数
int main()
 {
 test1();            //实用()作为函数调用操作符
 test2("hello ");   //实用()作为函数调用操作符
 return 0;
 }

访问一个结构的成员

  • . 结构体.成员名
  • -> 结构体指针->成员名
#include <stdio.h>
struct Stu
{
 char name[10];
 int age;
 char sex[5];
 double score;
};
void set_age1(struct Stu stu)
{
 stu.age = 18;
}
void set_age2(struct Stu* pStu)
{
 pStu->age = 18;//结构成员访问
}
int main()
{
 struct Stu stu;
 struct Stu* pStu = &stu;//结构成员访问
 stu.age = 20;//结构成员访问
 set_age1(stu);
 pStu->age = 20;//结构成员访问
 set_age2(pStu);
 return 0;
}


相关文章
|
2月前
|
C语言
C语言中的关系运算符和关系表达式
C语言中的关系运算符和关系表达式
21 0
|
2月前
|
C语言
C语言中的条件运算符和条件表达式详解
C语言中的条件运算符和条件表达式详解
48 0
|
5天前
|
C语言
C语言逻辑操作符的短路问题
C语言逻辑操作符的短路问题
|
6天前
|
编译器 C语言
【C语言】:中移位操作符,位操作符详运算规则详解
【C语言】:中移位操作符,位操作符详运算规则详解
7 1
|
9天前
|
存储 编译器 C语言
C语言---操作符详解(1)
C语言---操作符详解
11 1
|
16天前
|
存储 C语言 索引
【C语言基础】:操作符详解(二)
【C语言基础】:操作符详解(二)
|
24天前
|
编译器 C语言
C语言学习记录——操作符详解知识点选记(算术操作符、单目操作符、移位操作符、关系操作符、逻辑操作符、条件操作符......)二
C语言学习记录——操作符详解知识点选记(算术操作符、单目操作符、移位操作符、关系操作符、逻辑操作符、条件操作符......)二
26 3
|
25天前
|
存储 C语言
C语言:详解操作符(下)
C语言:详解操作符(下)
20 3
|
24天前
|
C语言
C语言学习记录——操作符习题、算数转换习题,多解法&优解法&单选题
C语言学习记录——操作符习题、算数转换习题,多解法&优解法&单选题
14 1
|
24天前
|
存储 编译器 C语言
C语言学习记录——操作符详解知识点选记(算术操作符、单目操作符、移位操作符、关系操作符、逻辑操作符、条件操作符......)一
C语言学习记录——操作符详解知识点选记(算术操作符、单目操作符、移位操作符、关系操作符、逻辑操作符、条件操作符......)一
20 1