Оператор запятую следует использовать осторожно
Опубликовано: 1 Января, 2022
В C и C ++ запятая является последним оператором в таблице приоритета. Поэтому следует осторожно использовать запятую справа от выражения присваивания. Например, в программе ниже можно было бы ожидать, что на выходе будет b = 10. Но программа выводит b = 20, поскольку присваивание имеет более высокий приоритет перед запятой, а выражение «b = 20, a» становится эквивалентным «(b = 20), a».
#include<stdio.h> int main() { int a = 10, b; b = 20, a; // b = 20 printf ( " b = %d " , b); getchar (); return 0; } |
Если поставить скобку с запятой, то b = a (или 10).
#include<stdio.h> int main() { int a = 10, b; b = (20, a); // b = a printf ( " b = %d " , b); getchar (); return 0; } |
Пожалуйста, напишите комментарии, если вы обнаружите что-то неправильное, или вы хотите поделиться дополнительной информацией по теме, обсужденной выше.
Хотите узнать о лучших видео и практических задачах, ознакомьтесь с базовым курсом C ++ для базового и продвинутого уровня C ++ и курсом C ++ STL для базового уровня плюс STL. Чтобы завершить подготовку от изучения языка к DS Algo и многому другому, см. Полный курс подготовки к собеседованию .