计算机C语言中逻辑运算符“与”“或”“非”优先级是怎样的? c语言中运算符有哪几种,优先级顺序是怎样
C\u8bed\u8a00\u4e2d\u903b\u8f91\u8fd0\u7b97\u7b26\u975e"!"\u4e0e"&&"\u6216"||"\u7684\u4f18\u5148\u7ea7\u600e\u4e48\u8bf4\uff1f\u540c\u4e00\u4f18\u5148\u7ea7\u7684\u8fd0\u7b97\u7b26\uff0c\u7ed3\u5408\u6b21\u5e8f\u7531\u7ed3\u5408\u65b9\u5411\u6240\u51b3\u5b9a\u3002\u7b80\u5355\u8bb0\u5c31\u662f\uff1a\uff01 > \u7b97\u672f\u8fd0\u7b97\u7b26 > \u5173\u7cfb\u8fd0\u7b97\u7b26 > && > || > \u8d4b\u503c\u8fd0\u7b97\u7b26\u3002
\u6269\u5c55\u8d44\u6599\uff1a
\u903b\u8f91\u8fd0\u7b97\u7b26\u4f18\u5148\u7ea7\uff1a
\u4f18\u5148\u7ea7\u4e0e\u6c42\u503c\u987a\u5e8f\u65e0\u5173\u3002\u5982a+b && b*c\uff0c\u867d\u7136*\u4f18\u5148\u7ea7\u6700\u9ad8\uff0c\u4f46\u8fd9\u4e2a\u8868\u8fbe\u5f0f\u6c42\u503c\u987a\u5e8f\u662f\u4ece\u5de6\u5230\u53f3\u3002
\u4f18\u5148\u7ea7\u4ece\u4e0a\u5230\u4e0b\u4f9d\u6b21\u9012\u51cf\uff0c\u6700\u4e0a\u9762\u5177\u6709\u6700\u9ad8\u7684\u4f18\u5148\u7ea7\uff0c\u9017\u53f7\u64cd\u4f5c\u7b26\u5177\u6709\u6700\u4f4e\u7684\u4f18\u5148\u7ea7\u3002
\u76f8\u540c\u4f18\u5148\u7ea7\u4e2d\uff0c\u6309\u7ed3\u5408\u6027\u8fdb\u884c\u7ed3\u5408\u3002\u5927\u591a\u6570\u8fd0\u7b97\u7b26\u7ed3\u5408\u6027\u662f\u4ece\u5de6\u5230\u53f3\uff0c\u53ea\u6709\u4e09\u4e2a\u4f18\u5148\u7ea7\u662f\u4ece\u53f3\u81f3\u5de6\u7ed3\u5408\u7684\uff0c\u5b83\u4eec\u662f\u5355\u76ee\u8fd0\u7b97\u7b26\u3001\u6761\u4ef6\u8fd0\u7b97\u7b26\u3001\u8d4b\u503c\u8fd0\u7b97\u7b26\u3002
\u57fa\u672c\u7684\u4f18\u5148\u7ea7\u9700\u8981\u8bb0\u4f4f\uff1a
\u6307\u9488\u6700\u4f18\uff0c\u5355\u76ee\u8fd0\u7b97\u4f18\u4e8e\u53cc\u76ee\u8fd0\u7b97\u3002\u5982\u6b63\u8d1f\u53f7\u3002
\u5148\u7b97\u672f\u8fd0\u7b97\uff0c\u540e\u79fb\u4f4d\u8fd0\u7b97\uff0c\u6700\u540e\u4f4d\u8fd0\u7b97\u3002\u8bf7\u7279\u522b\u6ce8\u610f\uff1a1 << 3 + 2 & 7\u7b49\u4ef7\u4e8e (1 << (3 + 2))&7.
\u903b\u8f91\u8fd0\u7b97\u6700\u540e\u7ed3\u5408\u3002
\u53c2\u8003\u8d44\u6599\uff1a\u767e\u5ea6\u767e\u79d1\u2014\u2014\u8fd0\u7b97\u7b26\u4f18\u5148\u7ea7
C\u8bed\u8a00\u4e2d\uff0c\u8fd0\u7b97\u7b26\u9664\u4e86\u5e38\u89c1\u7684\u4e09\u5927\u7c7b\uff0c\u7b97\u672f\u8fd0\u7b97\u7b26\u3001\u5173\u7cfb\u8fd0\u7b97\u7b26\u4e0e\u903b\u8f91\u8fd0\u7b97\u7b26\u4e4b\u5916\uff0c\u8fd8\u6709\u4e00\u4e9b\u7528\u4e8e\u5b8c\u6210\u7279\u6b8a\u4efb\u52a1\u7684\u8fd0\u7b97\u7b26\u3002
\u8fd0\u7b97\u7b26\u7684\u8fd0\u7b97\u4f18\u5148\u7ea7\u5171\u5206\u4e3a15 \u7ea7\uff0c1 \u7ea7\u6700\u9ad8\uff0c15 \u7ea7\u6700\u4f4e\u3002 \u5728\u8868\u8fbe\u5f0f\u4e2d\uff0c\u4f18\u5148\u7ea7\u8f83\u9ad8\u7684\u5148\u4e8e\u4f18\u5148\u7ea7\u8f83\u4f4e\u7684\u8fdb\u884c\u8fd0\u7b97\u3002\u800c\u5728\u4e00\u4e2a\u8fd0\u7b97\u91cf\u4e24\u4fa7\u7684\u8fd0\u7b97\u7b26 \u4f18\u5148\u7ea7\u76f8\u540c\u65f6\uff0c\u5219\u6309\u8fd0\u7b97\u7b26\u7684\u7ed3\u5408\u6027\u6240\u89c4\u5b9a\u7684\u7ed3\u5408\u65b9\u5411\u5904\u7406\u3002
\u4e00\u7ea7\u8fd0\u7b97\u7b26\uff1a\u6807\u8bc6\uff0c\u5e38\u91cf\uff0c\u5b57\u7b26\u4e32\u6587\u5b57\u91cf\uff0c\u4f18\u5148\u7ea7\u63d0\u5347\u8868\u8fbe\u5f0f\u6700\u4f18\u5148\u6267\u884c\u3002
\u4e8c\u7ea7\u8fd0\u7b97\u7b26\uff1a\u6570\u7ec4\u4e0b\u6807\u8fd0\u7b97\uff08expression\uff09\u3001\u51fd\u6570\u8c03\u7528\uff08argument-expression-list\uff09\u3001\u6210\u5458\u8bbf\u95ee\uff08identifier\u3001 -> identifier\uff09\u3001\u540e\u7f00\u81ea\u589e\uff08i++\uff09\u3001\u540e\u7f00\u81ea\u51cf\uff08i--\uff09\u3001 \u590d\u5408\u521d\u59cb\u5316\uff08initializer-list\uff09\u3002
\u4e09\u7ea7\u8fd0\u7b97\u7b26\uff1a\u524d\u7f00\u81ea\u589e\uff08++i\uff09\u3001\u524d\u7f00\u81ea\u51cf\uff08--i\uff09\u3001\u5355\u76ee\u8f6c\u578b\u8868\u5f0f\u5f0f\uff08\u53d6\u5730\u5740& \uff0c\u63d0\u9886 * \uff0c \u6b63\u53f7+ \uff0c\u8d1f\u53f7-\u3001 \u4f4d\u53cd~ \u903b\u8f91\u5426!\uff09\u3001\u6c42\u7c7b\u578b\u957f\u5ea6\uff08sizeof unary-expression\uff09\u3002
\u56db\u7ea7\u8fd0\u7b97\u7b26\uff1a\u5f3a\u5236\u8868\u8fbe\u5f0f\u6210\u4e3atype-name\u6307\u5b9a\u7684\u7c7b\u578b( type-name ) cast-expression\u3002
\u4e94\u7ea7\u8fd0\u7b97\u7b26\uff1a\u201c * \u201d \u4e58\u6cd5\u8fd0\u7b97\u7b26\u3002
\u516d\u7ea7\u8fd0\u7b97\u7b26\uff1a\u201c + \u201d\u52a0\u6cd5\u8fd0\u7b97\u7b26\u3002
\u4e03\u7ea7\u8fd0\u7b97\u7b26\uff1a> \u53f3\u79fb\u8fd0\u7b97\u7b26\u3002
\u516b\u7ea7\u8fd0\u7b97\u7b26\uff1a\u3001>=\u5173\u7cfb\u8fd0\u7b97\u7b26\u3002
\u4e5d\u7ea7\u8fd0\u7b97\u7b26\uff1a\u201c == \u201d\u7b49\u4e8e\u8fd0\u7b97\u7b26\uff1b\u201c != \u201d\u4e0d\u7b49\u4e8e\u8fd0\u7b97\u7b26\u3002
\u5341\u7ea7\u8fd0\u7b97\u7b26\uff1a\u201c & \u201d\u6309\u4f4d\u4e0e\u8fd0\u7b97\u7b26\u3002
\u5341\u4e00\u7ea7\u8fd0\u7b97\u7b26\uff1a\u201c \u2227 \u201d\u6309\u4f4d\u5f02\u6216\u8fd0\u7b97\u7b26\u3002
\u5341\u4e8c\u7ea7\u8fd0\u7b97\u7b26\uff1a\u201c | \u201d\u6309\u4f4d\u6216\u8fd0\u7b97\u7b26\u3002
\u5341\u4e09\u7ea7\u8fd0\u7b97\u7b26\uff1a\u201c&&\u201d\u903b\u8f91\u4e0e\u8fd0\u7b97\u7b26\u3002
\u5341\u56db\u7ea7\u8fd0\u7b97\u7b26\uff1a\u201c || \u201d\u903b\u8f91\u6216\u8fd0\u7b97\u7b26\u3002
\u5341\u4e94\u7ea7\u8fd0\u7b97\u7b26\uff1a? :\u6761\u4ef6\u8fd0\u7b97\u7b26\u3002
\u6269\u5c55\u8d44\u6599
C\u8bed\u8a00\u4e2d\u5404\u8fd0\u7b97\u7b26\u7684\u7ed3\u5408\u6027\uff1a
1\u3001\u5de6\u7ed3\u5408\u6027(\u81ea\u5de6\u81f3\u53f3)\uff1a
\u4f8b\u5982\u7b97\u672f\u8fd0\u7b97\u7b26\u7684\u7ed3\u5408\u6027\u662f\u81ea\u5de6\u81f3\u53f3\uff0c\u5373\u5148\u5de6\u540e\u53f3\u3002\u5982\u6709\u8868\u8fbe\u5f0fx-y+z \u5219y \u5e94\u5148\u4e0e\u201c-\u201d\u53f7\u7ed3\u5408\uff0c\u6267\u884cx-y \u8fd0\u7b97\uff0c\u7136\u540e\u518d\u6267\u884c+z \u7684\u8fd0\u7b97\u3002\u8fd9\u79cd\u81ea\u5de6\u81f3\u53f3\u7684\u7ed3\u5408\u65b9\u5411\u5c31\u79f0\u4e3a\u201c\u5de6\u7ed3\u5408\u6027\u201d\u3002
2\u3001\u53f3\u7ed3\u5408\u6027(\u81ea\u53f3\u81f3\u5de6)
\u81ea\u53f3\u81f3\u5de6\u7684\u7ed3\u5408\u65b9\u5411\u79f0\u4e3a\u201c\u53f3\u7ed3\u5408\u6027\u201d\u3002\u6700\u5178\u578b\u7684\u53f3\u7ed3\u5408 \u6027\u8fd0\u7b97\u7b26\u662f\u8d4b\u503c\u8fd0\u7b97\u7b26\u3002\u5982x=y=z,\u7531\u4e8e\u201c=\u201d\u7684\u53f3\u7ed3\u5408\u6027\uff0c\u5e94\u5148\u6267\u884cy=z \u518d\u6267\u884cx=(y=z)\u8fd0\u7b97\u3002C\u8bed\u8a00\u8fd0\u7b97\u7b26\u4e2d\u6709\u4e0d\u5c11\u4e3a\u53f3\u7ed3\u5408\u6027\uff0c\u5e94\u6ce8\u610f\u533a\u522b\uff0c\u4ee5\u907f\u514d\u7406\u89e3\u9519\u8bef\u3002
\u53c2\u8003\u8d44\u6599\u6765\u6e90\uff1a\u767e\u5ea6\u767e\u79d1\u2014\u2014C\u8bed\u8a00\u8fd0\u7b97\u7b26
非的优先级最高(它是一个单目操作符)与的优先级次之或的优先级,最低单目操作符的优先级最高。
1)&&:当且仅当两个运算量的值都为"真"时,运算结果为"真",否则为"假"。
2) || :当且仅当两个运算量的值都为"假"时,运算结果为"假",否则为"真"。
3) ! :当运算量的值为"真"时,运算结果为"假";当运算量的值为"假"时,运算结果为"真"。
扩展资料:
优先级:
优先级与求值顺序无关。如a+b && b*c,虽然*优先级最高,但这个表达式求值顺序是从左到右。
优先级从上到下依次递减,最上面具有最高的优先级,逗号操作符具有最低的优先级。
相同优先级中,按结合性进行结合。大多数运算符结合性是从左到右,只有三个优先级是从右至左结合的,它们是单目运算符、条件运算符、赋值运算符。
非的优先级最高(它是一个单目操作符)
与的优先级次之
或的优先级最低
单目操作符的优先级最高。
非!最高 与&&次之 或||最低
非最高,与和或一样的
同上
绛旓細鍦C璇█涓紝閫昏緫涓庤繍绠楃"&"杩樺彲浠ヤ笌鍏朵粬杩愮畻绗︿竴璧蜂娇鐢紝渚嬪涓庢瘮杈冭繍绠楃涓璧蜂娇鐢紝浠ュ疄鐜版洿澶嶆潅鐨勯昏緫鍒ゆ柇銆備緥濡傦紝浠ヤ笅浠g爜灏嗘墦鍗"a is even"锛屽洜涓哄彉閲廰鐨勫兼槸鍋舵暟锛岃屽彉閲廱鐨勫兼槸濂囨暟锛歩nt a = 2; int b = 3; if ((a & 1) && (b & 1)) printf("a is even"); 璇锋敞鎰忥紝閫昏緫...
绛旓細鍦C璇█涓锛岄昏緫涓庯紙&&锛夈侀昏緫鎴栵紙||锛夊拰閫昏緫闈(!)鏄笁绉嶅熀鏈鐨勯昏緫杩愮畻绗銆傚畠浠垎鍒敤浜庤繛鎺ュ竷灏旇〃杈惧紡骞跺垽鏂畠浠殑鐪熷亣銆傞昏緫涓庯紙&&锛夛細閫昏緫涓庤繛鎺ヤ袱涓竷灏旇〃杈惧紡锛屽彧鏈夊綋涓や釜琛ㄨ揪寮忕殑鍊奸兘鏄湡鏃讹紝鏁翠釜琛ㄨ揪寮忕殑鍊兼墠鏄湡銆傚惁鍒欙紝鏁翠釜琛ㄨ揪寮忕殑鍊煎氨鏄亣銆備緥濡傦細閫昏緫鎴栵紙||锛夛細閫昏緫鎴栬繛鎺ヤ袱涓竷灏旇〃杈...
绛旓細C璇█涓殑涓庛佹垨銆侀潪鏄C璇█鐨勯昏緫杩愮畻绗銆1銆侀昏緫涓 鍦–璇█涓昏緫涓庣敤&&琛ㄧず銆備妇渚嬶細a&&b锛堝叾涓璦銆乥閮戒唬琛ㄤ竴涓潯浠讹級濡傛灉a鍜宐閮戒负鐪燂紝鍒欑粨鏋滀负鐪燂紝濡傛灉a鍜宐涓湁涓涓潯浠朵负鍋囷紝鍒欑粨鏋滀负鍋囥2銆侀昏緫鎴 鍦–璇█涓昏緫鎴栫敤||琛ㄧず銆備妇渚嬶細a||b锛堝叾涓璦銆乥閮戒唬琛ㄤ竴涓潯浠讹級濡傛灉a鍜宐鏈変竴涓...
绛旓細C璇█涓&&琛ㄧず涓庯紝鎰忎负鍚屾椂閮借婊¤冻銆&&閫昏緫杩愮畻绗锛屽苟涓旀槸鍙岀洰杩愮畻绗︺侰璇█鏄竴闂ㄩ潰鍚戣繃绋嬬殑銆傛娊璞″寲鐨勯氱敤绋嬪簭璁捐璇█锛屽箍娉涘簲鐢ㄤ簬搴曞眰寮鍙戙侰璇█鏄竴闂ㄩ潰鍚戣繃绋嬬殑璁$畻鏈缂栫▼璇█锛屼笌C++銆丣ava绛夐潰鍚戝璞$紪绋嬭瑷鏈夋墍涓嶅悓銆C璇█鐨璁捐鐩爣鏄彁渚涗竴绉嶈兘浠ョ畝鏄撶殑鏂瑰紡缂栬瘧銆佸鐞嗕綆绾у瓨鍌ㄥ櫒銆佷粎浜х敓灏戦噺...
绛旓細c璇█涓&&鏄竴绉嶅弻鐩繍绠楃锛岃〃绀轰笌杩愮畻锛岃屽綋宸﹁竟鎵缁欒〃杈惧紡鎴栧彉閲忎负0鏃讹紝涓嶅啀璁$畻鍙充晶锛屾暣涓〃杈惧紡涓洪浂銆傗&&鈥濊〃绀轰笌锛屾剰涓哄悓鏃堕兘瑕佹弧瓒筹紝灞炰簬閫昏緫杩愮畻绗銆傞昏緫杩愮畻绗︽诲叡鏈3涓紝鍒嗗埆鏄"&&"銆"||"鍜"!"銆俛 && b锛屼竴鍋囧繀鍋囷紝缁撳悎鎬т粠宸﹁嚦鍙炽倈|鏄昏緫鎴栬繍绠楃锛宎 || b锛屼竴鐪熷繀鐪燂紝...
绛旓細C璇█涓殑涓庛佹垨銆侀潪鏄C璇█鐨勯昏緫杩愮畻绗銆 1銆侀昏緫涓 鍦–璇█涓昏緫涓庣敤&&琛ㄧず銆 涓句緥:a&&b(鍏朵腑a銆乥閮戒唬琛ㄤ竴涓潯浠) 濡傛灉a鍜宐閮戒负鐪,鍒欑粨鏋滀负鐪,濡傛灉a鍜宐涓湁涓涓潯浠朵负鍋,鍒欑粨鏋滀负鍋囥 2銆侀昏緫鎴 鍦–璇█涓昏緫鎴栫敤||琛ㄧず銆 涓句緥:a||b(鍏朵腑a銆乥閮戒唬琛ㄤ竴涓潯浠) 濡傛灉a鍜宐鏈変竴涓垨浠ヤ笂涓虹湡...
绛旓細鍦C璇█涓锛閫昏緫涓庤繍绠楃殑杩愮畻绗涓衡&鈥濆拰鈥&&鈥濓紝鏄弻鐩繍绠楃锛屽叾涓&&鈥濅负鐭矾涓庯紝浠ヤ笅涓鸿缁嗙敤娉曪細鐢ㄦ硶1锛氳〃杈惧紡1&琛ㄨ揪寮2 鐢ㄦ硶2锛氳〃杈惧紡1&&琛ㄨ揪寮2 褰撹〃杈惧紡1涓庤〃杈惧紡2鐨勫肩殕涓洪潪0锛堢湡锛夋椂锛屽垯鏁翠釜琛ㄨ揪寮忕殑鍊间负闈0锛堢湡锛夛紝鍚﹀垯锛屾暣涓〃杈惧紡鐨勫间负0锛堝亣锛夈傚叾涓紝鐢ㄦ硶1涓敤鐨勬槸鈥&鈥濓紝褰...
绛旓細C璇█涓殑閫昏緫杩愮畻绗锛&&锛堜笌杩愮畻锛夈亅|锛堟垨杩愮畻锛夈!锛堥潪杩愮畻锛夈備笌杩愮畻绗(&&)鍜屾垨杩愮畻绗(||)鍧囦负鍙岀洰杩愮畻绗︺傚叿鏈夊乏缁撳悎鎬с傞潪杩愮畻绗(!)涓哄崟鐩繍绠楃锛屽叿鏈夊彸缁撳悎鎬с傞昏緫杩愮畻绗﹀拰鍏跺畠杩愮畻绗︿紭鍏堢骇鐨勫叧绯诲彲琛ㄧず濡備笅锛氭湰鏉ユ病鏈夐敊璇紝鍏崇郴杩愮畻绗﹂兘鏄寜鈥滈潪涓庢垨鈥濋『搴忔潵杩愮畻鐨勩備絾鏄紝涓嶅悓鐨...
绛旓細C璇█涓&&琛ㄧず涓庯紝鎰忎负鍚屾椂閮借婊¤冻銆&&閫昏緫杩愮畻绗锛屽苟涓旀槸鍙岀洰杩愮畻绗︺侰璇█鏄竴闂ㄩ潰鍚戣繃绋嬬殑.鎶借薄鍖栫殑閫氱敤绋嬪簭璁捐璇█锛屽箍娉涘簲鐢ㄤ簬搴曞眰寮鍙戙侰璇█鏄竴闂ㄩ潰鍚戣繃绋嬬殑璁$畻鏈缂栫▼璇█锛屼笌C++銆丣ava绛夐潰鍚戝璞$紪绋嬭瑷鏈夋墍涓嶅悓銆C璇█鐨璁捐鐩爣鏄彁渚涗竴绉嶈兘浠ョ畝鏄撶殑鏂瑰紡缂栬瘧銆佸鐞嗕綆绾у瓨鍌ㄥ櫒銆佷粎浜х敓灏戦噺...
绛旓細杩愮畻瑙勫垯锛氫竴鍙橀浂锛岄浂鍙樹竴銆傚嵆鎿嶄綔鏁颁负1鏃剁粨鏋滀负0锛屾搷浣滄暟涓0鏃剁粨鏋滀负1銆C璇█鐨鍩烘湰杩愮畻锛氱畻鏈繍绠楋紝涓昏鍖呮嫭鐨勫氨鏄姞锛屽噺锛屼箻锛岄櫎鍜屽彇浣欒繍绠楋紝鍏朵腑闇瑕佹敞鎰忕殑鏄彇浣欒繍绠楀張绉颁负妯¤繍绠楋紝鍦ㄧ櫨鍒嗕箣鐨勪袱杈逛篃閮芥槸鏁存暟锛屽苟涓旂櫨鍒嗕箣鍙栦綑鐨勭粨鏋滄璐熷彧璺熺櫨鍒嗕箣宸﹁竟鐨勬暟鍊肩殑姝h礋鏈夊叧銆傦紙鐧惧垎涔嬪乏杈逛负姝e垯...