C语言 您所在的位置:网站首页 r语言中的赋值符号包括 C语言

C语言

2023-06-08 00:11| 来源: 网络整理| 查看: 265

          Hello,大家好,前面的文章里边介绍了算术、赋值以及移位操作符,这篇文章呢,就介绍一下C语言中的其他操作符吧~

目录

位操作符

单目操作符

关系操作符

逻辑操作符

条件操作符

逗号表达式

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

一.位操作符

        这类操作符可以直接对内存中存储的二进制位进行操作,但前提是,它所操作的对象只能是整型。因为我们知道,整型和浮点型在内存中的存储方式是完全不一样的,如果根据操作整型的方式去操作浮点数,那不得糟糕透顶啊,哈哈哈哈哈。前面的文章中讲到的移位操作符也是位操作符中的一种哦~

⚠:在移位操作中,可千万不要移动负数位,这个是未标准定义的。

(1)& :按位与(只要有0时就为0,只有同时为1时才为1);

(2)/  :按位或(只有同时为0时才为0,其余情况都为1);

(3)^  :  按位异或(对应的二进制位,相同为0,相异为1);

举个简单的例子吧:

 

 

二.单目操作符

      顾名思义,单目嘛,也就是只接受一个操作数的操作符,我们就当它只有一个眼睛吧,哈哈哈,主要有:

//单目操作符 ! //逻辑反操作 - //取负值 + //取正值 & //取地址 sizeof //操作数的类型长度(以字节为单位) ~ //对一个数的二进制按位取反 -- //前置减减,后置减减 ++ //前置加加,后置加加 * //间接访问操作符(解引用操作符) (类型) //强制类型转换

 注:这里的&,*应用于指针;

        sizeof 是操作符,不是函数!

举例子说明最直观了哦:

(1) !操作符

(2) &取地址操作符

 

 

从上面的例子就可以看到,

int a = 10; int *pa = &a;

 在这个代码中,希望大家能够正确的理解它们的含义哦。

不过,前面的这两行代码也可以写成:

int *pa; pa = &a;

 运行结果也是一样的。只是在后面的这种方式中,pa只是一个定义为int型的指针,pa = &a 它的前面没其他多余的标识,但是在printf("%d\n",*pa) 打印结果的时候,应用了解引用操作符(*)。

pa 虽然说是指针,它的里边存放着a的地址,不过它可把自己没有忘啊,它也有自己的地址,所以,通过对pa的地址进行解引用操作,仍然可以找到a所对应的值哦。

 (3)sizeof操作符

    sizeof操作符以字节的形式给出了其操作数所占存储空间的大小,操作数可以是一个表达式或者是括在括号内的类型名,操作数所占存储空间的大小由操作数的类型决定,从而返回一个对象或者类型所占的内存字节数。

    printf("%d\n", sizeof(a));//可以这样写;     printf("%d\n", sizeof(int)); //可以这样写;     printf("%d\n", sizeof a); //可以这样写;     printf("%d\n", sizeof int);//但不可以这样写;

在这里,添加一个小的知识点吧:

关于sizeof 和 strlen 的区别: 

sizeof 是C语言中的一个操作符,用于计算变量或者类型所占内存空间大小;

strlen(string strlen) 是C语言中的一个函数,用于计算字符串的长度,不包括结束符"\0";

      在使用strlen函数读取字符串的时候,遇到“\0”时就停止读取,此时,“\0”前面的字符的个数就是字符串的长度,这里,“\0”不算做一个字符。这个‘\0’转义字符在任何一个字符串的结尾都会隐藏一个"\0",是字符串结束的标志。

老规矩,看代码:

#include #include int main() { char arr[] = "abcdef"; printf("%d\n", strlen("abcdef")); printf("%d\n", sizeof("abcdef")); return 0; }

运行结果: 

 (4)前后置++操作符,前后置 - -操作符

前置:先给自己加(减),再使用;

后置:先使用,再给自己加(减);

看例子吧: 

(5)~对二进制的操作数取反操作符

比如二进制数为:1001,取反则为:0110

看代码:

 

三.关系操作符

>    >=    成员名

举个例子:

         好啦,关于C语言里操作符的介绍终于在本篇文章画上句号了,如果有错误之处,欢迎各位小伙伴们在评论区多多互动吖~

 

 



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有