C语言公有34种运算符都是什么

Python018

C语言公有34种运算符都是什么,第1张

按优先级排序,空行表示优先级下降,01为最高,最先算

14~31均为双目,左结合

() 01.圆括号

[] 02.下标

->03.指针型结构成员

. 04.结构成员

! 05.逻辑非

~ 06.位非

++ 07.自增

-- 08.自减

- 09.取负

(类型) 10.类型转换

* 11.取内容

&12.取地址

sizeof 13.求字节

…………………………………………………

此级(5~13)均为单目运算,且都为右结合

* 14.乘

/ 15.除

% 16.求余

+ 17.加

- 18.减

<<19.左移

>>20.右移

<21.小于

<= 22.小于等于

>23.大于

>= 24.大于等于

== 25.等于

!= 26.不等于

&27.位与

^ 28.位异或

| 29.位或

&&30.与

|| 31.或

?: 32.条件运算

……………………………………

此级(32)为三目运算,右结合

= 33.赋值运算

………………………………………………………………

另有10个扩展符+=,-=,*=,/=,%=,>>=,<<=,&=,^=,|=

, 34.逗号运算

参考资料:科学出版社《C语言程序设计》

根据关键字的作用,可以将关键字分为数据类型关键字和流程控制关键字两大类。

1 数据类型关键字

A基本数据类型(5个)

void :声明函数无返回值或无参数,声明无类型指针,显式丢弃运算结果

char :字符型类型数据,属于整型数据的一种

int :整型数据,通常为编译器指定的机器字长

float :单精度浮点型数据,属于浮点数据的一种

double :双精度浮点型数据,属于浮点数据的一种

B 类型修饰关键字(4个)

short :修饰int,短整型数据,可省略被修饰的int。

long :修饰int,长整形数据,可省略被修饰的int。

signed :修饰整型数据,有符号数据类型

unsigned :修饰整型数据,无符号数据类型

C 复杂类型关键字(5个)

struct :结构体声明

union :共用体声明

enum :枚举声明

typedef :声明类型别名

sizeof :得到特定类型或特定类型变量的大小

D 存储级别关键字(6个)

auto :指定为自动变量,由编译器自动分配及释放。通常在栈上分配

static :指定为静态变量,分配在静态变量区,修饰函数时,指定函数作用域为文件内部

register :指定为寄存器变量,建议编译器将变量存储到寄存器中使用,也可以修饰函数形参,建议编译器通过寄存器而不是堆栈传递参数

extern :指定对应变量为外部变量,即在另外的目标文件中定义,可以认为是约定由另外文件声明的对象的一个“引用”

const :与volatile合称“cv特性”,指定变量不可被当前线程/进程改变(但有可能被系统或其他线程/进程改变)

volatile :与const合称“cv特性”,指定变量的值有可能会被系统或其他进程/线程改变,强制编译器每次从内存中取得该变量的值

2 流程控制关键字

A 跳转结构(4个)

return :用在函数体中,返回特定值(或者是void值,即不返回值)

continue :结束当前循环,开始下一轮循环

break :跳出当前循环或switch结构

goto :无条件跳转语句

B 分支结构(5个)

if :条件语句

else :条件语句否定分支(与if连用)

switch :开关语句(多重分支语句)

case :开关语句中的分支标记

default :开关语句中的“其他”分治,可选。

C 循环结构(3个)

for :for循环结构,for(123)4的执行顺序为1->2->4->3->2...循环,其中2为循环条件

do :do循环结构,do 1 while(2)的执行顺序是 1->2->1...循环,2为循环条件

while :while循环结构,while(1) 2的执行顺序是1->2->1...循环,1为循环条件

以上循环语句,当循环条件表达式为真则继续循环,为假则跳出循环。