Maison >développement back-end >Tutoriel C#.Net >Quelles sont les différences entre = et == en c++ ?

Quelles sont les différences entre = et == en c++ ?

青灯夜游
青灯夜游original
2020-11-24 17:13:3717822parcourir

Différences : 1. "=" signifie affectation et est un opérateur d'affectation et "==" est un opérateur d'égalité, utilisé pour déterminer si les deux côtés sont égaux 2. L'opérateur "=" a un caractère obligatoire ; tapez Conversion, tandis que "==" n'a pas de conversion.

Quelles sont les différences entre = et == en c++ ?

La différence entre = et == en c++

1. Signification différente :

"=" signifie affectation.

Sa fonction est d'attribuer la valeur d'une expression à une lvalue. Une expression est soit une lvalue, soit une rvalue. La soi-disant lvalue fait référence à une expression qui peut être utilisée sur le côté gauche d'une opération d'affectation. Les valeurs doivent être modifiables et ne peuvent pas être constantes. Nous utilisons des variables comme lvalues, et nous pouvons également voir que les pointeurs et les références peuvent également être utilisés comme lvalues.

"==" est l'opérateur d'égalité, qui détermine si les deux côtés sont égaux. En utilisant l'opérateur d'égalité, si vous souhaitez que l'opérateur d'égalité renvoie vrai, les valeurs ou instructions des deux côtés de l'opérateur doivent être égales ; si elles ne sont pas égales, l'opérateur == renvoie faux ;

2. S'il y a une conversion forcée :

"=" Cet opérateur effectuera une conversion de type forcée, il y aura donc également des règles spéciales :

(1) Si un opérande est un nombre et l'autre est une chaîne, l'opérateur == essaiera de convertir la chaîne en nombre avant de comparer

(2) Si un opérande est une valeur booléenne ; , il sera alors converti en type numérique par l'opérateur avant la comparaison, dans ce cas, true est converti en 1 et false est converti en 0.

(3) Si un opérande est nul et l'autre est sous-fin, le résultat de la comparaison est vrai

(4) Si l'un ou les deux opérandes sont NaN, le résultat de la comparaison est faux ;

Il n'y a pas de conversion forcée dans "==", mais l'opération d'affectation copie la valeur de la variable d'origine dans la nouvelle variable (affectation par valeur), donc changer l'une n'affecte pas l'autre.

3. Le résultat de la valeur de retour est différent :

Le résultat de "=" signifie en fait attribuer la valeur de l'expression de droite à l'opérande la gauche. La valeur d'une expression d'affectation est la valeur attribuée. Autrement dit, la valeur de « $a = 3 » est 3.

"==" est différent, il renverra une valeur fausse ou vraie. Ainsi, une instruction telle que "4" == 4 renverra vrai car JavaScript convertira le caractère "4" en chiffre 4. Si vous souhaitez que l'instruction renvoie false, vous devez utiliser l'opérateur d'identité (===).

Quelles sont les différences entre = et == en c++ ?

Pour plus de connaissances liées à la programmation, veuillez visiter : Cours vidéo de programmation ! !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn