عملگرها در ++C

عملگرها در ++C

عملگرها (Operators) در ++C نمادهایی هستند که برای انجام عملیات روی متغیرها و مقادیر استفاده می‌شوند.

۱. عملگرهای حسابی (Arithmetic Operators)

این عملگرها برای انجام عملیات ریاضی استفاده می‌شوند.

عملگر توضیح مثال
+ جمع a + b
- تفریق a - b
* ضرب a * b
/ تقسیم a / b
% باقیمانده تقسیم a % b
int a = 10, b = 3;
cout << (a + b) << endl; // خروجی: 13
cout << (a % b) << endl; // خروجی: 1

۲. عملگرهای رابطه‌ای (Relational Operators)

این عملگرها برای مقایسه‌ی مقادیر استفاده می‌شوند و مقدار true یا false برمی‌گردانند.

عملگر توضیح مثال
== برابر است با a == b
!= نابرابر است با a != b
> بزرگ‌تر از a > b
< کوچک‌تر از a < b
>= بزرگ‌تر یا مساوی a >= b
<= کوچک‌تر یا مساوی a <= b
cout << (10 > 5) << endl;  // خروجی: 1 (true)
cout << (10 == 5) << endl; // خروجی: 0 (false)

۳. عملگرهای منطقی (Logical Operators)

این عملگرها برای بررسی شرایط منطقی استفاده می‌شوند.

عملگر توضیح مثال
&& و (AND) (a > 5 && b < 10)
`   `
! نقیض (NOT) !(a > 5)
bool x = true, y = false;
cout << (x && y) << endl; // خروجی: 0 (false)
cout << (!x) << endl; // خروجی: 0 (false)

۴. عملگرهای انتساب (Assignment Operators)

این عملگرها برای مقداردهی به متغیرها استفاده می‌شوند.

پیشنهاد ویژه یادگیری
دسترسی نامحدود به بیش از ۴,۰۰۰ ویدئوی آموزشی تخصصی

با تهیه یک اشتراک ماهانه در پلتفرم Elimi|علیمی، بدون محدودیت به تمام دوره‌ها، پروژه‌ها و مسیرهای یادگیری دسترسی پیدا کنید.

عملگر توضیح مثال
= مقداردهی ساده a = b
+= جمع و انتساب a += b (معادل a = a + b)
-= تفریق و انتساب a -= b
*= ضرب و انتساب a *= b
/= تقسیم و انتساب a /= b
%= باقیمانده و انتساب a %= b
int a = 5;
a += 3; // a = 8
cout << a << endl;

۵. عملگرهای بیتی (Bitwise Operators)

این عملگرها روی بیت‌های عدد کار می‌کنند.

عملگر توضیح مثال
& AND بیتی a & b
` ` OR بیتی
^ XOR بیتی a ^ b
~ NOT بیتی ~a
<< شیفت چپ a << 2
>> شیفت راست a >> 2
int a = 5, b = 3;  
cout << (a & b) << endl; // خروجی: 1
cout << (a << 1) << endl; // خروجی: 10 (شیفت چپ)

۶. عملگرهای افزایش و کاهش (Increment & Decrement Operators)

عملگر توضیح مثال
++ افزایش یک واحدی a++ یا ++a
-- کاهش یک واحدی a-- یا --a
int x = 5;
cout << x++ << endl; // خروجی: 5
cout << ++x << endl; // خروجی: 7

x++ مقدار اولیه را نمایش می‌دهد و بعد مقدار را افزایش می‌دهد، ولی ++x ابتدا مقدار را افزایش می‌دهد و سپس نمایش می‌دهد.

۷. عملگر شرطی سه‌تایی (Ternary Operator)

این عملگر به صورت شرط ? مقدار_اگر_درست : مقدار_اگر_غلط است.

int a = 10, b = 20;
int min = (a < b) ? a : b;
cout << min << endl; // خروجی: 10

۸. عملگرهای اشاره‌گر (Pointer Operators)

عملگر توضیح مثال
* مقدار اشاره‌گر *ptr
& آدرس متغیر &var
int x = 10;
int* ptr = &x;
cout << *ptr << endl; // خروجی: 10

۹. عملگرهای تبدیل نوع (Type Casting Operators)

این عملگرها برای تبدیل نوع داده‌ها استفاده می‌شوند.

عملگر توضیح مثال
(type) تبدیل صریح int x = (int)3.14;
static_cast<type> تبدیل ایمن در زمان کامپایل int x = static_cast<int>(3.14);
reinterpret_cast<type> تبدیل آدرس‌ها و اشاره‌گرها char* p = reinterpret_cast<char*>(ptr);
double pi = 3.14;
int x = static_cast<int>(pi);
cout << x << endl; // خروجی: 3

۱۰. عملگرهای عضویت کلاس (Class Member Operators)

عملگر توضیح مثال
. دسترسی به عضو کلاس obj.var
-> دسترسی از طریق اشاره‌گر ptr->var
class MyClass {
public:
    int x = 10;
};

MyClass obj;
cout << obj.x << endl; // خروجی: 10

۱۱. عملگر sizeof

برای دریافت اندازه‌ی یک متغیر یا نوع داده استفاده می‌شود.

cout << sizeof(int) << endl; // خروجی: 4 (در اکثر سیستم‌ها)

۱۲. عملگر new و delete (مدیریت حافظه پویا)

برای تخصیص و آزادسازی حافظه در زمان اجرا استفاده می‌شوند.

int* ptr = new int(10); // تخصیص حافظه
cout << *ptr << endl;  
delete ptr; // آزادسازی حافظه

عملگرها در ++C

عملگرها (Operators) در ++C نمادهایی هستند که برای انجام عملیات روی متغیرها و مقادیر استفاده می‌شوند.

۱. عملگرهای حسابی (Arithmetic Operators)

این عملگرها برای انجام عملیات ریاضی استفاده می‌شوند.

عملگر توضیح مثال
+ جمع a + b
- تفریق a - b
* ضرب a * b
/ تقسیم a / b
% باقیمانده تقسیم a % b
int a = 10, b = 3;
cout << (a + b) << endl; // خروجی: 13
cout << (a % b) << endl; // خروجی: 1

۲. عملگرهای رابطه‌ای (Relational Operators)

این عملگرها برای مقایسه‌ی مقادیر استفاده می‌شوند و مقدار true یا false برمی‌گردانند.

عملگر توضیح مثال
== برابر است با a == b
!= نابرابر است با a != b
> بزرگ‌تر از a > b
< کوچک‌تر از a < b
>= بزرگ‌تر یا مساوی a >= b
<= کوچک‌تر یا مساوی a <= b
cout << (10 > 5) << endl;  // خروجی: 1 (true)
cout << (10 == 5) << endl; // خروجی: 0 (false)

۳. عملگرهای منطقی (Logical Operators)

این عملگرها برای بررسی شرایط منطقی استفاده می‌شوند.

عملگر توضیح مثال
&& و (AND) (a > 5 && b < 10)
`   `
! نقیض (NOT) !(a > 5)
bool x = true, y = false;
cout << (x && y) << endl; // خروجی: 0 (false)
cout << (!x) << endl; // خروجی: 0 (false)

۴. عملگرهای انتساب (Assignment Operators)

این عملگرها برای مقداردهی به متغیرها استفاده می‌شوند.

عملگر توضیح مثال
= مقداردهی ساده a = b
+= جمع و انتساب a += b (معادل a = a + b)
-= تفریق و انتساب a -= b
*= ضرب و انتساب a *= b
/= تقسیم و انتساب a /= b
%= باقیمانده و انتساب a %= b
int a = 5;
a += 3; // a = 8
cout << a << endl;

۵. عملگرهای بیتی (Bitwise Operators)

این عملگرها روی بیت‌های عدد کار می‌کنند.

عملگر توضیح مثال
& AND بیتی a & b
` ` OR بیتی
^ XOR بیتی a ^ b
~ NOT بیتی ~a
<< شیفت چپ a << 2
>> شیفت راست a >> 2
int a = 5, b = 3;  
cout << (a & b) << endl; // خروجی: 1
cout << (a << 1) << endl; // خروجی: 10 (شیفت چپ)

۶. عملگرهای افزایش و کاهش (Increment & Decrement Operators)

عملگر توضیح مثال
++ افزایش یک واحدی a++ یا ++a
-- کاهش یک واحدی a-- یا --a
int x = 5;
cout << x++ << endl; // خروجی: 5
cout << ++x << endl; // خروجی: 7

x++ مقدار اولیه را نمایش می‌دهد و بعد مقدار را افزایش می‌دهد، ولی ++x ابتدا مقدار را افزایش می‌دهد و سپس نمایش می‌دهد.

۷. عملگر شرطی سه‌تایی (Ternary Operator)

این عملگر به صورت شرط ? مقدار_اگر_درست : مقدار_اگر_غلط است.

int a = 10, b = 20;
int min = (a < b) ? a : b;
cout << min << endl; // خروجی: 10

۸. عملگرهای اشاره‌گر (Pointer Operators)

عملگر توضیح مثال
* مقدار اشاره‌گر *ptr
& آدرس متغیر &var
int x = 10;
int* ptr = &x;
cout << *ptr << endl; // خروجی: 10

۹. عملگرهای تبدیل نوع (Type Casting Operators)

این عملگرها برای تبدیل نوع داده‌ها استفاده می‌شوند.

عملگر توضیح مثال
(type) تبدیل صریح int x = (int)3.14;
static_cast<type> تبدیل ایمن در زمان کامپایل int x = static_cast<int>(3.14);
reinterpret_cast<type> تبدیل آدرس‌ها و اشاره‌گرها char* p = reinterpret_cast<char*>(ptr);
double pi = 3.14;
int x = static_cast<int>(pi);
cout << x << endl; // خروجی: 3

۱۰. عملگرهای عضویت کلاس (Class Member Operators)

عملگر توضیح مثال
. دسترسی به عضو کلاس obj.var
-> دسترسی از طریق اشاره‌گر ptr->var
class MyClass {
public:
    int x = 10;
};

MyClass obj;
cout << obj.x << endl; // خروجی: 10

۱۱. عملگر sizeof

برای دریافت اندازه‌ی یک متغیر یا نوع داده استفاده می‌شود.

cout << sizeof(int) << endl; // خروجی: 4 (در اکثر سیستم‌ها)

۱۲. عملگر new و delete (مدیریت حافظه پویا)

برای تخصیص و آزادسازی حافظه در زمان اجرا استفاده می‌شوند.

int* ptr = new int(10); // تخصیص حافظه
cout << *ptr << endl;  
delete ptr; // آزادسازی حافظه

کلید واژه‌ها: عملگرها-++Operators-C

پیشنهاد ویژه یادگیری
دسترسی نامحدود به بیش از ۴,۰۰۰ ویدئوی آموزشی تخصصی

با تهیه یک اشتراک ماهانه در پلتفرم Elimi|علیمی، بدون محدودیت به تمام دوره‌ها، پروژه‌ها و مسیرهای یادگیری دسترسی پیدا کنید.