本文摘自PHP中文网,作者青灯夜游,侵删。
区别:1、“=”是赋值的意思,是赋值运算符;而“==”是相等运算符,用于判断两边是否相等;2、“=”运算符存在强制类型转换,而“==”不存在强制转换。
c++中=和==的区别
1、含义不同:
“=”是赋值的意思。
它的作用是将一个表达式的值赋给一个左值。一个表达式或者是一个左值,或者是一个右值。所谓左值是指一个能用于赋值运算左边的表达式。左值必须能够被修改,不能是常量。我们用变量作左值,还可以看到,指针和引用也可以作左值。
“==”是相等操作符,判断两边是否相等。利用相等运算符,如果希望相等运算符返回true,则运算符两侧的值或语句必须使相等的;如果不相等,则==运算符返回false。
2、是否存在强制转换:
“=”该运算符将执行强制类型转换,所以也会有一些特殊的规则:
(1)如果一个操作数是数字,另一个是字符串,==运算符会尝试在比较之前将字符串转换成数字;
相关阅读 >>
更多相关阅读请进入《C++》频道 >>