关闭

2.数据类型,运算符优先级

标签: floatjava扩展语言c
494人阅读 评论(0) 收藏 举报
分类:

const用于声明常量,常量的值是不可改变的,而且C语言只能在声明时候赋值,JAVA好像是声明时候不用赋值,但只能赋值一次。

 

long类型的常量以字母l或L结尾,无符号常量以u结尾,(ul/UL)

 

浮点数后缀f或F表示float,l或L表示double

 

0开头八进制,0x开头16进制,也可以用U/UL/

 

一个字符常量是一个整数,在ASSIC字符集中对应,例如‘0’ = 48

 

某些字符可以通过转义字符序列表示为字符或字符串常量

 

\ooo 八进制            ‘\013’ 纵向制表符

\xoo 十六进制        ‘\xb’ 纵向制表符

 

int a = 48;

printf("%c\n",a);

打印出来是0

所以’\48’ = 0

 

标准assic码有128位,含扩展256啊?(这个查了,但还是不很清楚)

 

 

   char *p = "hello world!\0";

p[1] = 'a';//这里出错了,字符串常量不能被赋值

 

优先级  运算符  名称或含义     使用形式       结合方向       说明

1       []      数组下标       数组名[常量表达式]     左到右 

        ()      圆括号  (表达式)/函数名(形参表)            

        .       成员选择(对象)       对象.成员名           

        ->      成员选择(指针)       对象指针->成员名              

2       -       负号运算符     -表达式 右到左  单目运算符

        (类型)  强制类型转换   (数据类型)表达式              

        ++      自增运算符     ++变量名/变量名++              单目运算符

        --      自减运算符     --变量名/变量名--              单目运算符

        *       取值运算符     *指针变量              单目运算符

        &       取地址运算符   &变量名        单目运算符

        !       逻辑非运算符   !表达式        单目运算符

        ~       按位取反运算符 ~表达式        单目运算符

        sizeof  长度运算符     sizeof(表达式)        

3       /       除      表达式/表达式  左到右  双目运算符

        *       乘      表达式*表达式          双目运算符

        %       余数(取模)   整型表达式/整型表达式          双目运算符

4       +       加      表达式+表达式  左到右  双目运算符

        -       减      表达式-表达式          双目运算符

5       <<      左移    变量<<表达式   左到右  双目运算符

        >>      右移    变量>>表达式           双目运算符

6       >       大于    表达式>表达式  左到右  双目运算符

        >=      大于等于       表达式>=表达式         双目运算符

        <       小于    表达式<表达式          双目运算符

        <=      小于等于       表达式<=表达式         双目运算符

7       ==      等于    表达式==表达式 左到右  双目运算符

        !=      不等于  表达式!=表达式        双目运算符

8       &       按位与  表达式&表达式  左到右  双目运算符

9       ^       按位异或       表达式^表达式  左到右  双目运算符

10      |       按位或  表达式|表达式  左到右  双目运算符

11      &&      逻辑与  表达式&&表达式 左到右  双目运算符

12      ||      逻辑或  表达式||表达式 左到右  双目运算符

13      ?:      条件运算符     表达式1? 表达式2: 表达式3    右到左  三目运算符

14      =       赋值运算符     变量=表达式    右到左 

        /=      除后赋值       变量/=表达式          

        *=      乘后赋值       变量*=表达式          

        %=      取模后赋值     变量%=表达式          

        +=      加后赋值       变量+=表达式          

        -=      减后赋值       变量-=表达式          

        <<=     左移后赋值     变量<<=表达式         

        >>=     右移后赋值     变量>>=表达式         

        &=      按位与后赋值   变量&=表达式          

        ^=      按位异或后赋值 变量^=表达式          

        |=      按位或后赋值   变量|=表达式          

15      ,       逗号运算符     表达式,表达式,…       左到右  从左向右顺序运算

说明:

同一优先级的运算符,运算次序由结合方向所决定。

简单记就是:! > 算术运算符 > 关系运算符 > && > || > 赋值运算符

 


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:4937次
    • 积分:73
    • 等级:
    • 排名:千里之外
    • 原创:3篇
    • 转载:2篇
    • 译文:0篇
    • 评论:0条
    文章分类
    文章存档