차이: 1. "="는 할당을 의미하며 할당 연산자입니다. 그리고 "=="는 양쪽이 같은지 여부를 결정하는 데 사용되는 동등 연산자입니다. 2. "=" 연산자는 유형 변환을 강제합니다. =="캐스트가 없습니다.
C++
에서 =와 ==의 차이점 1. 다른 의미:
"="는 할당을 의미합니다.
이 기능은 표현식의 값을 lvalue에 할당하는 것입니다. 표현식은 lvalue 또는 rvalue입니다. 소위 lvalue는 할당 작업의 왼쪽에 사용할 수 있는 표현식을 나타냅니다. lvalue는 수정 가능해야 하며 상수일 수 없습니다. 변수를 lvalue로 사용하고 포인터와 참조도 lvalue로 사용할 수 있음을 알 수 있습니다.
"=="는 양쪽이 같은지 여부를 결정하는 항등 연산자입니다. 항등 연산자를 사용하여 항등 연산자가 true를 반환하도록 하려면 연산자 양쪽의 값이나 명령문이 동일해야 하며, 동일하지 않으면 == 연산자는 false를 반환합니다.
2. 강제 변환이 있습니까?
"=" 이 연산자는 강제 유형 변환을 수행하므로 몇 가지 특별한 규칙도 있습니다.
(1) 피연산자 중 하나가 숫자이고 다른 하나가 숫자인 경우 문자 문자열인 경우 == 연산자는 비교 전에 문자열을 숫자로 변환하려고 시도합니다.
(2) 피연산자가 부울 값인 경우 비교 전에 연산자에 의해 숫자 유형으로 변환됩니다. , true는 1로 변환되고 false는 0으로 변환됩니다.
(3) 한 피연산자가 null이고 다른 피연산자가 underfined이면 비교 결과는 true입니다.
(4) 피연산자 중 하나 또는 둘 다 NaN이면 비교 결과는 false입니다.
"=="에는 강제 변환이 없지만 할당 작업은 원래 변수의 값을 새 변수에 복사하므로(값별 할당) 하나를 변경해도 다른 변수에는 영향을 미치지 않습니다.
3. 반환 값의 결과가 다릅니다.
"="의 결과는 실제로 오른쪽의 표현식 값을 왼쪽의 피연산자에 할당하는 것을 의미합니다. 할당 표현식의 값은 할당된 값입니다. 즉, "$a = 3"의 값은 3입니다.
"=="는 다르므로 false 또는 true 값을 반환합니다. 따라서 "4" == 4와 같은 문은 JavaScript가 문자 "4"를 숫자 4로 변환하기 때문에 true를 반환합니다. 명령문이 false를 반환하도록 하려면 항등 연산자(===)를 사용해야 합니다.
더 많은 프로그래밍 관련 지식을 보려면 프로그래밍 비디오 코스를 방문하세요! !
위 내용은 C++에서 =와 ==의 차이점은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!