Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Industrial programming >> Langue C

Opérateurs en C++ avec exemple :qu'est-ce que c'est, les types et les programmes

Que sont les opérateurs ?

Un opérateur est un symbole utilisé pour effectuer des opérations sur les opérandes. Un opérateur exploite des opérandes. Les opérations peuvent être mathématiques ou logiques. Il existe différents types d'opérateurs en C++ pour effectuer différentes opérations.

Considérez l'opération suivante :

a = x + y;

Dans la déclaration ci-dessus, x et y sont les opérandes tandis que + est un opérateur d'addition. Lorsque le compilateur C++ rencontre l'instruction ci-dessus, il ajoute x et y et stocke le résultat dans la variable a.

Dans ce didacticiel C++, vous apprendrez :

Types d'opérateurs en C++

Il existe principalement 6 types d'opérateurs différents en C++

  1. Opérateurs arithmétiques
  2. Opérateurs relationnels
  3. Opérateurs logiques
  4. Opérateurs au niveau du bit
  5. Opérateurs d'affectation
  6. Autres opérateurs

Opérateurs arithmétiques

Ce sont les types d'opérateurs utilisés pour effectuer des opérations mathématiques/arithmétiques. Ils incluent :

Opérateur Description + opérateur d'additionAjoute aux opérandes.– opérateur de soustractionSoustrait 2 ème opérande à partir du 1 er opérande.* opérateur de multiplicationMultiplie 2 opérandes./ opérateur de division.Divise le numérateur par le dénominateur.Opérateur de module %Renvoie le reste après la division.++ opérateur d'incrémentationAugmente une valeur entière de 1.— opérateur de décrémentation.Diminue une valeur entière de 1.

Par exemple :

#include <iostream>
using namespace std;
int main() {
	int a = 11;
	int b = 5;
	int c;

	cout << "a + b is :" << a+b << endl; //11+5

	cout << "a - b is :" << a-b << endl; //11-5

	cout << "a * b is :" << a*b << endl; //11*5

	cout << "a / b is :" << a/b << endl; //11/5

	cout << "a % b is :" << a%b << endl; //11%5

	cout << "a++ is :" << a++ << endl; //11++

	cout << "a-- is :" << a-- << endl; //12--

	return 0;
}

Sortie :

Voici une capture d'écran du code :

Explication du code :

  1. Inclure le fichier d'en-tête iostream dans notre code. Cela nous permettra de lire et d'écrire sur la console.
  2. Inclure l'espace de noms std afin d'utiliser ses classes et fonctions sans l'appeler.
  3. Appeler la fonction main() à l'intérieur de laquelle la logique du programme doit être ajoutée. Le { marque le début du corps de la fonction main().
  4. Déclarer une variable entière a et l'initialiser à 11.
  5. Déclarer une variable entière b et l'initialiser à 5.
  6. Déclarer une variable entière c.
  7. Imprimer la valeur de l'opération a+b à côté d'un autre texte sur la console.
  8. Imprimer la valeur de l'opération a-b à côté d'un autre texte sur la console.
  9. Imprimer la valeur de l'opération a*b à côté d'un autre texte sur la console.
  10. Imprimer la valeur de l'opération a/b à côté d'un autre texte sur la console.
  11. Imprimer la valeur de l'opération a%b à côté d'un autre texte sur la console.
  12. Imprimer la valeur de l'opération a++ à côté d'autres textes sur la console.
  13. Imprimer la valeur de l'opération a à côté d'autres textes sur la console.
  14. La fonction main() doit renvoyer une valeur si le programme s'exécute correctement.
  15. Fin du corps de la fonction main().

Opérateurs relationnels

Ces types d'opérateurs effectuent des comparaisons sur des opérandes. Par exemple, vous devrez peut-être savoir quel opérande est supérieur à l'autre ou inférieur à l'autre. Ils incluent :

Opérateur Description ==égal à l'opérateur.Vérifie l'égalité de deux valeurs d'opérande.!=différent de l'opérateurVérifie l'égalité de deux valeurs d'opérande.> supérieur à l'opérateurVérifie si la valeur de l'opérande gauche est supérieure à la valeur de l'opérande droit.=supérieur ou égal à l'opérateur Vérifie si la valeur de l'opérande gauche est supérieure ou égale à la valeur de l'opérande droit. <=inférieur ou égal à l'opérateur. Vérifie si la valeur de l'opérande gauche est inférieur ou égal à la valeur de l'opérande droit.

Par exemple :

#include <iostream>
using namespace std;

int main() {
	int a = 11;
	int b = 5;

	cout << "a=11, b=5" << endl;
	if (a == b) {
		cout << "a == b is true" << endl;
	}
	else {
		cout << " a == b is false" << endl;
	}

	if (a < b) {
		cout << "a < b is true" << endl;
	}
	else {
		cout << "a < b is false" << endl;
	}

	if (a > b) {
		cout << "a > b is true" << endl;
	}
	else {
		cout << "a > b is false" << endl;
	}

	return 0;
}

Sortie :

Voici une capture d'écran du code :

Explication du code :

  1. Inclure le fichier d'en-tête iostream dans notre code. Cela nous permettra de lire et d'écrire sur la console.
  2. Inclure l'espace de noms std afin d'utiliser ses classes et fonctions sans l'appeler.
  3. Appeler la fonction main() à l'intérieur de laquelle la logique du programme doit être ajoutée. Le { marque le début du corps de la fonction main().
  4. Déclarer une variable entière a et l'initialiser à 11.
  5. Déclarer une variable entière b et l'initialiser à 5.
  6. Imprimer du texte sur la console indiquant les valeurs des variables a et b.
  7. Effectuer l'opération arithmétique, a==b dans une instruction de prise de décision if pour savoir si c'est vrai ou faux. Le { marque le début du corps de l'instruction if.
  8. Texte à imprimer sur la console si l'opération a==b est vraie. Le endl est un mot-clé C++ pour la ligne de fin. Il pousse le curseur pour lancer l'impression à la ligne suivante. Le } marque la fin du corps de l'instruction if.
  9. La partie else de l'instruction if ci-dessus. Il indique quoi faire si l'opération a==b est fausse.
  10. Texte à imprimer sur la console si l'opération a==b est fausse. Le endl est un mot-clé C++ pour la ligne de fin. Il pousse le curseur pour lancer l'impression à la ligne suivante. Le } marque la fin du corps de l'instruction else.
  11. Effectuer l'opération arithmétique, a
  12. Texte à imprimer sur la console si l'opération a
  13. La partie else de l'instruction if ci-dessus. Il indique quoi faire si l'opération a
  14. Texte à imprimer sur la console si l'opération a
  15. Effectuer l'opération arithmétique a>b dans une instruction de prise de décision if pour savoir si c'est vrai ou faux. Le { marque le début du corps de l'instruction if.
  16. Texte à imprimer sur la console si l'opération a>b est vraie. Le endl est un mot-clé C++ pour la ligne de fin. Il pousse le curseur pour lancer l'impression à la ligne suivante. Le } marque la fin du corps de l'instruction if.
  17. La partie else de l'instruction if ci-dessus. Il indique ce qu'il faut faire si l'opération a>b est fausse.
  18. Texte à imprimer sur la console si l'opération a>b est fausse. Le endl est un mot-clé C++ pour la ligne de fin. Il pousse le curseur pour lancer l'impression à la ligne suivante. Le } marque la fin du corps de l'instruction else.
  19. La fonction main() doit renvoyer une valeur si le programme s'exécute correctement.
  20. Fin du corps de la fonction main().

Opérateurs logiques

Les opérateurs logiques combiner deux/plusieurs contraintes/conditions. Les opérateurs logiques complètent également l'évaluation de l'état d'origine considéré. Ils incluent :

Opérateur Description &&Opérateur ET logique. La condition est vraie si les deux opérandes ne sont pas nuls.|| Opérateur OU logique. La condition est vraie si l'un des opérandes est différent de zéro.! Opérateur NON logique. Il inverse l'état logique de l'opérande. Si l'opérande est vrai, le ! l'opérateur le rend faux.

Par exemple :

#include <iostream> 
using namespace std;
int main()
{
	int a = 5, b = 2, c = 6, d = 4;
	if (a == b && c > d)
		cout << "a equals to b AND c is greater than d\n";
	else
		cout << "AND operation returned false\n";

	if (a == b || c > d)
		cout << "a equals to b OR c is greater than d\n";
	else
		cout << "Neither a is equal to b nor c is greater than d\n";

	if (!b)
		cout << "b is zero\n";
	else
		cout << "b is not zero";

	return 0;
}

Sortie :

Voici une capture d'écran du code :

Explication du code :

  1. Inclure le fichier d'en-tête iostream dans notre code. Cela nous permettra de lire et d'écrire sur la console.
  2. Inclure l'espace de noms std afin d'utiliser ses classes et fonctions sans l'appeler.
  3. Appeler la fonction main() dans laquelle la logique du programme doit être ajoutée.
  4. Le { marque le début du corps de la fonction main().
  5. Déclarer 4 variables entières a, b, c et d et leur attribuer des valeurs différentes.
  6. Utiliser l'opérateur &&(AND) dans l'instruction if. Il joint deux conditions, la valeur de a est égale à la valeur de b et la valeur de a est supérieure à la valeur de b. La première condition est fausse, la deuxième condition est vraie. False&&true est False, par conséquent, le résultat de if est false.
  7. Texte à imprimer sur la console si l'instruction if ci-dessus est vraie. Cela ne sera pas exécuté.
  8. Partie à exécuter si l'instruction if ci-dessus est fausse.
  9. Texte à imprimer sur la console si l'instruction if est fausse. Cela sera exécuté.
  10. Utiliser le || Opérateur (OR) dans une instruction if. Il joint deux conditions, la valeur de a est égale à la valeur de b et la valeur de a est supérieure à la valeur de b. La première condition est fausse, la deuxième condition est vraie. False||true est True, donc le résultat de if est true.
  11. Texte à imprimer sur la console si l'instruction if ci-dessus est vraie. Cela sera exécuté.
  12. Partie à exécuter si l'instruction if ci-dessus est fausse.
  13. Texte à imprimer sur la console si l'instruction if est fausse. Cela ne sera pas exécuté.
  14. Vérifier si la valeur de la variable est 0.
  15. Texte à imprimer sur la console si l'instruction if ci-dessus est vraie. Cela ne sera pas exécuté.
  16. Partie à exécuter si l'instruction if ci-dessus est fausse.
  17. Texte à imprimer sur la console si l'instruction if est fausse. Cela sera exécuté.
  18. La fonction main() doit renvoyer une valeur si le programme s'exécute correctement.
  19. Fin du corps de la fonction main().

Opérateurs au niveau du bit

Opérateurs au niveau du bit effectuer des opérations au niveau du bit sur les opérandes. Tout d'abord, les opérateurs sont convertis au niveau du bit, puis les opérations sont effectuées sur les opérandes. Lorsque des opérations arithmétiques telles que l'addition et la soustraction sont effectuées au niveau du bit, les résultats peuvent être obtenus plus rapidement. Ils incluent :

Opérateur Description &(ET bit à bit). Il prend 2 nombres (opérandes) puis effectue ET sur chaque bit de deux nombres. Si les deux valent 1, AND renvoie 1, sinon 0.| (OR au niveau du bit) Prend 2 nombres (opérandes) puis effectue OR sur chaque bit de deux nombres. Il renvoie 1 si l'un des bits est 1. ^ (le XOR au niveau du bit) Prend 2 nombres (opérandes) puis exécute XOR sur chaque bit de 2 nombres. Il renvoie 1 si les deux bits sont différents.<<(décalage à gauche) Prend deux nombres puis décale à gauche les bits du premier opérande. Le deuxième opérande détermine le nombre total de positions à décaler.>> (décalage à droite) Prend deux nombres puis décale à droite les bits du premier opérande. Le deuxième opérande détermine le nombre de positions à décaler.~ (NON au niveau du bit). Prend le nombre puis inverse tous ses bits.
#include <iostream>
using namespace std;

int main() {
	unsigned int p = 60;	  // 60 = 0011 1100  
	unsigned int q = 13;	  // 13 = 0000 1101
	int z = 0;

	z = p & q;
	cout << "p&q is : " << z << endl; // 12 = 0000 1100

	z = p | q;
	cout << "p|q is : " << z << endl; // 61 = 0011 1101

	z = p ^ q;
	cout << "p^q is : " << z << endl; // 49 = 0011 0001

	z = ~p;
	cout << "~p is : " << z << endl; // -61 = 1100 0011

	z = p << 2;
	cout << "p<<2 is: " << z << endl; // 240 = 1111 0000

	z = p >> 2;
	cout << "p>>2 is : " << z << endl; // 15 = 0000 1111

	return 0;
}

Sortie :

Voici une capture d'écran du code :

Explication du code :

  1. Inclure le fichier d'en-tête iostream dans notre code. Cela nous permettra de lire et d'écrire sur la console.
  2. Inclure l'espace de noms std afin d'utiliser ses classes et fonctions sans l'appeler.
  3. Appeler la fonction main() à l'intérieur de laquelle la logique du programme doit être ajoutée. Le { marque le début du corps de la fonction main().
  4. Déclarer une variable entière non signée p et lui attribuer une valeur de 60, soit 0011 1100 en binaire.
  5. Déclarer une variable entière non signée q et lui attribuer la valeur 13, soit 0000 1101 en binaire.
  6. Déclarer une variable entière z et l'initialiser à 0.
  7. Effectuer l'opération bit à bit &(AND) sur les variables p et q et stocker le résultat dans la variable z.
  8. Imprimer le résultat de l'opération ci-dessus sur la console à côté d'un autre texte.
  9. Exécuter le bitwise | Opération (OU) sur les variables p et q et stockage du résultat dans la variable z.
  10. Imprimer le résultat de l'opération ci-dessus sur la console à côté d'un autre texte.
  11. Exécuter l'opération au niveau du bit ^ (XOR) sur les variables p et q et stocker le résultat dans la variable z.
  12. Imprimer le résultat de l'opération ci-dessus sur la console à côté d'un autre texte.
  13. Effectuer l'opération au niveau du bit ~ (NOT) sur les variables p et q et stocker le résultat dans la variable z.
  14. Imprimer le résultat de l'opération ci-dessus sur la console à côté d'un autre texte.
  15. Exécuter l'opération de décalage vers la gauche sur la variable p et stocker le résultat dans la variable z.
  16. Imprimer le résultat de l'opération ci-dessus sur la console à côté d'un autre texte.
  17. Exécuter l'opération de décalage vers la droite sur la variable p et stocker le résultat dans la variable z.
  18. Imprimer le résultat de l'opération ci-dessus sur la console à côté d'un autre texte.
  19. La fonction main() doit renvoyer une valeur si le programme s'exécute correctement.
  20. Fin du corps de la fonction main().

Opérateurs d'affectation

Opérateurs d'affectation attribuer des valeurs aux variables. L'opérande/variable est ajouté au côté gauche de l'opérateur tandis que la valeur est ajoutée au côté droit de l'opérateur. La variable et la valeur doivent appartenir au même type de données, sinon le compilateur C++ générera une erreur.
Par exemple :

x = 5;

Dans l'exemple ci-dessus, x est la variable/opérande, =est l'opérateur d'affectation tandis que 5 est la valeur. Voici les opérateurs d'affectation populaires en C++ :

Opérateur Description =(opérateur d'affectation simple)Il affecte la valeur de droite à la variable de gauche.+=(Ajouter l'opérateur d'affectation AND)Il ajoute d'abord la valeur de l'opérande de gauche à la valeur de l'opérande de droite, puis affecte le résultat à la variable de gauche.-=( Soustraire ET opérateur d'affectation) Il soustrait d'abord la valeur de l'opérande droit de la valeur de l'opérande gauche puis affecte le résultat à la variable de gauche. variable à gauche./=(Division ET opérateur d'affectation) Il divise d'abord la valeur de l'opérande de gauche par la valeur de l'opérande de droite, puis affecte le résultat à la variable de gauche.

Par exemple :

#include <iostream> 
using namespace std;
int main()
{
	int x = 5;
	cout << "Initial value of x is " << x << "\n";

	x += 5;
	cout << "x += 5 gives :" << x << "\n";

	x -= 5;
	cout << "x -= 5 gives : " << x << "\n";

	x *= 5;
	cout << "x *= 5 gives :" << x << "\n";

	x /= 5;
	cout << "x /= 5 gives : " << x << "\n";

	return 0;
}

Sortie :

Voici une capture d'écran du code :

Explication du code :

  1. Inclure le fichier d'en-tête iostream dans notre code. Cela nous permettra de lire et d'écrire sur la console.
  2. Inclure l'espace de noms std afin d'utiliser ses classes et fonctions sans l'appeler.
  3. Appeler la fonction main() dans laquelle la logique du programme doit être ajoutée.
  4. Le { marque le début du corps de la fonction main().
  5. Déclarer une variable entière x et lui attribuer la valeur 5.
  6. Imprimer la valeur de la variable x à côté d'un autre texte sur la console. Le \n est un caractère de nouvelle ligne. Il déplace le curseur à la ligne suivante lors de l'impression.
  7. Ajouter 5 à la valeur de la variable x et affecter le résultat à la variable x.
  8. Imprimer la valeur de la variable x sur la console à côté d'un autre texte.
  9. En soustrayant 5 de la valeur de x et en attribuant le résultat à la variable x.
  10. Imprimer la valeur de la variable x sur la console à côté d'un autre texte.
  11. Multiplication de la valeur de la variable x par 5 et attribution du résultat à la variable x.
  12. Imprimer la valeur de la variable x sur la console à côté d'un autre texte.
  13. Division de la valeur de la variable x par 5 et attribution du résultat à la variable x.
  14. Imprimer la valeur de la variable x sur la console à côté d'un autre texte.
  15. La fonction main() doit renvoyer une valeur si le programme s'exécute correctement.
  16. Fin du corps de la fonction main().

Autres opérateurs

Autres opérateurs incluent l'opérateur sizeof, l'opérateur virgule, l'opérateur conditionnel et la priorité des opérateurs.
Parlons d'autres opérateurs pris en charge par C++ :

taillede l'opérateur

Cet opérateur détermine la taille d'une variable. Utilisez l'opérateur sizeof pour déterminer la taille d'un type de données.

Par exemple :

#include <iostream> 
using namespace std;
int main() {
	cout<<"Size of int : "<< sizeof(int) << "\n";

	cout<<"Size of char : " << sizeof(char) << "\n";

	cout<<"Size of float : " << sizeof(float) << "\n";

	cout<<"Size of double : " << sizeof(double) << "\n";

	return 0;
}

Sortie :

Voici une capture d'écran du code :

Explication du code :

  1. Inclure le fichier d'en-tête iostream dans notre code. Cela nous permettra de lire et d'écrire sur la console.
  2. Inclure l'espace de noms std afin d'utiliser ses classes et fonctions sans l'appeler.
  3. Appeler la fonction main() à l'intérieur de laquelle la logique du programme doit être ajoutée. Le { marque le début du corps de la fonction main().
  4. Déterminer la taille du type de données entier à l'aide de l'opérateur sizeof et l'imprimer avec d'autres textes sur la console.
  5. Déterminer la taille du type de données caractère à l'aide de l'opérateur sizeof et l'imprimer avec d'autres textes sur la console.
  6. Déterminer la taille du type de données flottant à l'aide de l'opérateur sizeof et l'imprimer avec d'autres textes sur la console.
  7. Déterminer la taille du type de données flottant à l'aide de l'opérateur sizeof et l'imprimer avec d'autres textes sur la console.
  8. La fonction main() doit renvoyer une valeur si le programme s'exécute correctement.
  9. Fin du corps de la fonction main().

Opérateur virgule

L'opérateur virgule (,) déclenche l'exécution d'une séquence d'opérations. Il exprime le premier opérande et ignore le résultat. Ensuite, il évalue le deuxième opérande et renvoie la valeur et le type.

#include <iostream>
using namespace std;
int main() {
	int x, y;
	y = 100;
	x = (y++, y + 10, 99 + y);
	cout << x;
	return 0;
}

Sortie :

Voici une capture d'écran du code :

Explication du code :

  1. Inclure le fichier d'en-tête iostream dans notre code. Cela nous permettra de lire et d'écrire sur la console.
  2. Inclure l'espace de noms std afin d'utiliser ses classes et fonctions sans l'appeler.
  3. Appeler la fonction main() à l'intérieur de laquelle la logique du programme doit être ajoutée. Le { marque le début du corps de la fonction main().
  4. Déclarer deux variables entières x et y.
  5. Attribuer à la variable y une valeur de 100.
  6. Incrémentation de la valeur de y et affectation du résultat à la variable x. Il commence par y à 100, puis l'incrémente à 101 (y++). Ensuite, y est ajouté à 10. Enfin, y, toujours à 101, est ajouté à 99, ce qui donne 200. x vaut maintenant 200.
  7. Imprimer la valeur de la variable x sur la console.
  8. La fonction main() doit renvoyer une valeur si le programme s'exécute correctement.
  9. Fin du corps de la fonction main().

Opérateur conditionnel

Cet opérateur évalue une condition et agit en fonction du résultat de l'évaluation.

Syntaxe :

Condition ? Expression2 : Expression3;

Paramètres :

  • La Condition est la condition qui doit être évaluée.
  • Expression1 est l'expression à exécuter si la condition est vraie.
  • Expression3 est l'expression à exécuter si la condition est fausse.

Par exemple :

#include <iostream>
using namespace std;
int main() {
	int a = 1, b;
	b = (a < 10) ? 2 : 5;
	cout << "value of b: " << b << endl;
	return 0;
}

Sortie :

Voici une capture d'écran du code :

Explication du code :

  1. Inclure le fichier d'en-tête iostream dans notre code. Cela nous permettra de lire et d'écrire sur la console.
  2. Inclure l'espace de noms std afin d'utiliser ses classes et fonctions sans l'appeler.
  3. Appeler la fonction main() à l'intérieur de laquelle la logique du programme doit être ajoutée. Le { marque le début du corps de la fonction main().
  4. Déclarer deux variables entières a et b. La variable a a reçu la valeur 1.
  5. Attribuer une valeur à la variable b. Si la variable a est inférieure à 10, b se verra attribuer la valeur 2, sinon, b se verra attribuer la valeur 5.
  6. Imprimer la valeur de la variable b sur la console à côté d'un autre texte.
  7. La fonction main() doit renvoyer une valeur si le programme s'exécute correctement.
  8. Fin du corps de la fonction main().

Priorité des opérateurs

Une même opération peut avoir plus d'un opérateur. Dans ce cas, la priorité des opérateurs détermine celui évalué en premier.

La liste suivante montre la priorité des opérateurs en C++, avec une priorité décroissante de gauche à droite :

(), [],*, /, %, +/-, <<,>>, ==, !=, ^, |, &&, ||, ?:, =, +=, -=, *=, /=

Résumé :

  • Les opérateurs sont des symboles permettant d'effectuer des opérations logiques et arithmétiques.
  • Les opérateurs arithmétiques nous aident à effectuer diverses opérations arithmétiques sur les opérandes.
  • Les opérateurs relationnels nous aident à effectuer diverses opérations de comparaison sur les opérandes.
  • Les opérateurs logiques nous aident à effectuer diverses opérations logiques sur les opérandes.
  • Les opérateurs au niveau du bit nous aident à effectuer des opérations au niveau du bit sur les opérandes.
  • Les opérateurs d'affectation nous aident à effectuer diverses opérations arithmétiques sur les opérandes.
  • L'opérateur sizeof renvoie la taille d'une variable ou d'un type de données.
  • L'opérateur virgule exécute une séquence d'opérations.
  • L'opérateur conditionnel évalue une condition et agit en fonction du résultat.

Langue C

  1. Qu'est-ce qu'une biopuce et types de biopuces
  2. Opérateurs C#
  3. Opérateurs C++
  4. Instruction C++ Switch Case avec EXAMPLE
  5. Allocation dynamique C++ de tableaux avec exemple
  6. Surcharge d'opérateur C++ avec des exemples
  7. Structure C++ avec exemple
  8. std ::list en C++ avec exemple
  9. Différence entre structure et classe :expliquée avec un exemple C++