现在的位置: 首页 > 编程语言 > 正文

C语言中&&,||,->是啥意思

2020年02月14日 编程语言 ⁄ 共 919字 ⁄ 字号 评论关闭

  C语言中&&是啥意思


  如果想写一个判断字符是否是小写字母的表达式如何写呢?


  比如此变量定义为ch:是否可以写成: ‘a’<=ch’z’ 这样呢?


  虽然我们从小的数学习惯让我们觉得这样写没错,但在C语言中这样写是错误的(即便编译没错),而正确的做法是将这个其实是两个条件的表达式(一个上限一个下限)分开写,并要求两个表达式同时满足即可


  两个表达式很容易实现,即:’a’<=ch 和 ch<=’z’


  那么如何要求两个都成立呢,这就可以说&&这个运算符了,它表示逻辑与的意思,即要求两边的表达式都为真,整体才为真


  因此这个表达式完整的写法可以写成:


  ’a’<=ch && a<=’z’


  逻辑或运算符 ||


  如果我们想实现多个表达式,只要满足其中任意一个就可以的功能,该如何实现呢?


  比如判断一个字符是不是字符(无论大小写都算)。


  那么我们会写两个表达式:


  ’a’<=ch && a<=’z’ 以及 ’A’<=ch && a<=’Z’


  那么这两个表达式,其实只要满足一个就可以符合条件,那么解决办法就是用逻辑与运算符||来链接即:


  (’a’<=ch && a<=’z’) || (’A’<=ch && a<=’Z’)


  即可实现,||运算符左右两边只要有一个满足条件整体表达式就成立。


  C语言中->是什么意思


  答:C语言中,->是指针才可以使用的访问结构体成员的运算符


  比如一段程序中有一个结构体:


  struct Data


  {


  int a;


  int b;


  }


  struct Data A;


  sruct Data *p=&A


  此时我们定义一个struct Data类型的变量A,再定义一个指针类型p


  如果通过变量名A访问结构体中的成员则则以用.的方式访问,比如为a赋值,则写成:


  A. a=10;


  如果用指针p来访问赋值,则可以写成:


  p->a=10;


  两者意义等价,第二种就是我们用到的->,可以理解为指向,左侧必须为指针!


  因此,可以看到,->是C语言中结构体指针使用的一种指向运算符,与.的作用一样,用于访问结构体成员。不同的是.只能用于变量,->只能用于指针,这是两者的区别。


  在C语言中看到这样的代码就不会奇怪,就能看得懂啦!

抱歉!评论已关闭.