C 语言运算符分类运 算 符 优 先 级 等 级 口 诀圆 方 括 号 、 箭 头 一 句 号 , 自 增 自 减 非 反 负 、 针 强 地 址 长 度 , 乘 除 , 加 减 , 再 移 位 , 小 等 大 等 、 等 等 不 等 , 八 位 与 , 七 位 异 , 六 位 或 , 五 与 , 四 或 , 三 疑 , 二 赋 , 一 真 逗 其 中 “, ”号 为 一 个 等 级 分 段 运 算 符 优 先 级 等 级 注 释“圆 方 括 号 、 箭 头 一 句 号 ”指 的 是 第 15 级 的 运 算 符 其 中 圆 方 括 号 很明 显 “( ) 、 []”, 箭 头 指 的 是 指 向 结 构 体 成 员 运 算 符 “->”, 句 号 指的 是 结 构 体 成 员 运 算 符 “.” ; “自 增 自 减 非 反 负 、 针 强 地 址 长 度 ”指 的 是 第 14 级 的 运 算 符 其 中 非 指 的 是 逻 辑 运 算 符 “!”, 反 指 的 是 按 位 取 反 运 算 符 “~”, 负 指 的 是负 号 运 算 符 “- ”, 针 指 的 是 指 针 运 算 符 “*”, 强 指 的 是 强 制 类 型 转 换运 算 符 , 地 址 指 的 是 地 址 运 算 符 “&”, 长 度 指 的 是 长 度 运 算 符“sizeof ”; “乘 除 , 加 减 , 再 移 位 ”移 位 指 的 是 左 移 运 算 符 “>”, 其 中 除 法 还 包 括 了 取 余 运 算 符 “%”; “小 等 大 等 、 等 等 不 等 ” 指 的 是 第 10 级 到 第 9 级 的 运 算 符 : 和 >=, 等 等 指 的 是 等 于 运 算 符 ==, 不 等 指 的 是 不 等 于 运 算 符 != “八 位 与 , 七 位 异 , 六 位 或 ”其 中 八 位 与 指 的 是 第 8 级 的 按 位 与 运 算 符 “&”, 七 位 异 指 的 是 第 7 级 的 按 位 异 或 运 算 符 “^”, 六 位 或 指的 是 第 6 级 的 按 位 或 运 算 符 “|”; “五 与 , 四 或 ”指 的 是 第 5 级 、 第 4 级 的 逻 辑 与 运 算 符 “&&”和 逻 辑或 运 算 符 “||”; “三 疑 , 二 赋 , 一 真 逗 ”指 的 是 第 3 级 到 第 1 级 的 运 算 符 。
其 中 , 三疑 指 的 是 条 件 运 算 符 “? : ” ( 三 有 双 重 含 义 : 即 指 优 先 级 别 是 三 , 它 的运 算 符 类 型 也 是 三 目 , 疑 也 取 “?”之 意 ) , 二 赋 指 的 是 赋 值 运 算 符=、 +=、 -=、 *=、 /=、 %=、 >>=、 指 向 结 构 体 成 员 运 算 符 ; . 结 构 体 成 员运 算 符 2 级 ( 右 结 合 ) !逻 辑 非 运 算 符 ; ~按 位 取 反 运 算 符 ; ++前 缀 增 量 运 算 符 ; --前 缀 减 量运 算 符 ; +正 号 运 算 符 ; -负 号 运 算 符 ; (类 型 )类 型 转 换 运 算 符 ; *指 针 运 算符 ; &地 址 运 算 符 ; sizeof 长 度 运 算 符 3 级 ( 左 结 合 ) *乘 法 运 算 符 ; /除 法 运 算 符 ; %取 余 运 算 符 4 级 ( 左 结 合 ) +加 法 运 算 符 ; -减 法 运 算 符 5 级 ( 左 结 合 ) >右 移 运 算 符 6 级 ( 左 结 合 ) 、 >=关 系 运 算 符 。
7 级 ( 左 结 合 ) ==等 于 运 算 符 ; !=不 等 于 运 算 符 8 级 ( 左 结 合 ) &按 位 与 运 算 符 9 级 ( 左 结 合 ) ^按 位 异 或 运 算 符 10 级 ( 左 结 合 ) |按 位 或 运 算 符 11 级 ( 左 结 合 ) &&逻 辑 与 运 算 符 12 级 ( 左 结 合 ) ||逻 辑 或 运 算 符 13 级 ( 右 结 合 ) ? :条 件 运 算 符 14 级 ( 右 结 合 ) =、 +=、 -=、 *=、 /=、 %=、 &=、 ^=、 |=、 >=赋 值 运算 符 15 级 ( 左 结 合 ) ,逗 号 运 算 符 。