什麼是運算子
運算子是讓程式執行特定的數學或邏輯操作的符號,用來表示針對資料的特定操作,也稱之為運算子。C++運算子分別有算術運算子、關係運算子、邏輯運算子、賦值運算子、位運算子、移位運算子、sizeof運算子、三目運算子、逗號運算子和域解析運算子。
算術運算子
C++中的算術運算子用於進行數學運算,包括加法、減法、乘法、除法和取模等。以下是C++算術運算子的介紹和使用:
- 加法運算子(+) :用於將兩個數值相加,或者將一個數值與一個字串連線起來。例如:
點選檢視程式碼
#include <iostream>
int main() {
int a = 5;
int b = 3;
int sum = a + b; // 8
std::cout << sum;
}
點選檢視程式碼
#include <iostream>
int main()
{
int a = 10;
int b = 2;
int d = a - b; // 8
std::cout << d;
}
點選檢視程式碼
#include <iostream>
int main()
{
int a = 5;
int b = 3;
int product = a * b; // 15
std::cout << product;
}
點選檢視程式碼
#include <iostream>
int main()
{
int a = 10;
int b = 3;
int quotient = a / b; // 3
std::cout << quotient;
}
點選檢視程式碼
#include <iostream>
int main()
{
int a = 10;
int b = 3;
int c = a % b; // 1
std::cout<< c;
}
點選檢視程式碼
#include <iostream>
int main()
{
int a = 5;
a++; // a的值變為6
std::cout << a << std::endl ;
/*++a; // 7
std::cout << a ;*/
}
點選檢視程式碼
#include <iostream>
int main()
{
int a = 5;
a--; // 先自減再賦值,a變為4
std::cout << a << std::endl;
/*--a; // 先賦值再自減,a的值變為3
std::cout << a;*/
}
點選檢視程式碼
int main()
{
int a = 5;
int b = 5;
if(a == b)
{
// 如果a等於b,則執行這裡的程式碼
std::cout << "相等";
}
}
點選檢視程式碼
#include <iostream>
int main()
{
int a = 5;
int b = 3;
if(a != b)
{
// 如果a不等於b,則執行這裡的程式碼
std::cout << "不相等";
}
}
點選檢視程式碼
#include <iostream>
int main()
{
int a = 5;
int b = 3;
if(a > b)
{
// 如果a大於b,則執行這裡的程式碼
std::cout << "a大於b";
}
}
點選檢視程式碼
#include <iostream>
int main()
{
int a = 3;
int b = 5;
if(a < b)
{
// 如果a小於b,則執行這裡的程式碼
std::cout << "a小於b";
}
}
點選檢視程式碼
#include <iostream>
int main()
{
int a = 5;
int b = 3;
if(a >= b)
{
// 如果a大於或等於b,則執行這裡的程式碼
std::cout << "a大於或等於b";
}
}
點選檢視程式碼
#include <iostream>
int main()
{
int a = 3;
int b = 5;
if(a < b)
{
// 如果a 小於或等於b,則執行這裡的程式碼
std::cout << "a小於或等於b";
}
}
點選檢視程式碼
#include <iostream>
int main()
{
bool a = true;
bool b = true;
if(a && b)
{
// 如果a和b都為真,則執行這裡的程式碼
std::cout << "a和b都為真";
}
}
點選檢視程式碼
#include <iostream>
int main()
{
bool a = true;
bool b = false;
if(a || b)
{
// 如果a或b有一個為真,則執行這裡的程式碼
std::cout << "a或b有一個為真";
}
}
點選檢視程式碼
#include <iostream>
int main()
{
bool a = false;
if (!a)
{
// 如果a為真,則執行這裡的程式碼
std::cout << "將a取反等於真";
}
}
點選檢視程式碼
#include <iostream>
int main()
{
int a = 5;
int b = 3;
int c = 2;
// 使用括號明確運算順序,先計算加法再計算關係運算,最後進行邏輯與運算
int sum = (a + b) && (b > c); // 1
if(sum)
{
// 如果sum為真,則執行這裡的程式碼
std:: cout << sum;
}
}
點選檢視程式碼
#include <iostream>
int main()
{
int a = 5; // 將5賦值給變數a
std::cout << a;
}
點選檢視程式碼
#include <iostream>
int main()
{
int a = 5;
a += 3; // 將3加到a上,並將結果賦值給a 5 + 3 = 8
std::cout << a;
}
點選檢視程式碼
#include <iostream>
int main()
{
int a = 10;
a -= 3; // 從a中減去3,並將結果7賦值給a;
std::cout << a;
}
點選檢視程式碼
#include <iostream>
int main()
{
int a = 5;
a *= 3; // 將a的值乘以3,並將結果15賦值給a
std::cout << a;
}
點選檢視程式碼
#include <iostream>
int main()
{
int a = 10;
a /= 3; // 將a的值除以3,並將結果3賦值給a
std::cout << a;
}
點選檢視程式碼
#include <iostream>
int main()
{
int a = 10;
a %= 3; // 將a的值除以3的餘數1賦值給a
std::cout << a;
}
點選檢視程式碼
#include <iostream>
int main()
{
int a = 60; // 二進位制表示為 0010 1100
int b = 13; // 二進位制表示為 0000 1101
int c = a & b; // 結果為0000 1100,即十進位制中的12
std::cout << c;
}
點選檢視程式碼
#include <iostream>
int main()
{
int a = 60; // 二進位制表示為0010 1100
int b = 13; // 二進位制表示為0000 1101
int c = a | b; // 結果為0010 1101,即十進位制中的61
std::cout << c;
}
點選檢視程式碼
#include <iostream>
int main()
{
int a = 60; // 二進位制表示為0010 1100
int b = 13; // 二進位制表示為0000 1101
int c = a ^ b; // 結果為0010 0001,即十進位制中的49
std::cout << c;
}
點選檢視程式碼
#include <iostream>
int main()
{
int a = 60; // 二進位制表示為0010 1100
int b = ~a; // 二進位制表示為1101 0011,即十進位制中的-61
std::cout << b;
}
點選檢視程式碼
#include <iostream>
int main()
{
int a = 5; // 二進位制表示為0000 0101
// 向左移動2位
int b = a << 2; // 結果為0001 0100,即十進位制中的20
std::cout << b;
}
點選檢視程式碼
#include <iostream>
int main()
{
int a = 20; // 二進位制數表示為0010 0100
// 向右移動2位
int b = a >> 2; // 結果為0000 0101 // 即十進位制中的5
std::cout << b;
}
點選檢視程式碼
#include <iostream>
int main()
{
int a = 5;
int b[10];
int *p = &a;
std::cout << "Size of int:"<< sizeof(int) <<"bytes\n" ; // 通常是4位元組,具體取決於平臺
std::cout << "Size of array:"<< sizeof(b) <<"bytes\n" ; // 返回整個陣列的大小,通常是40位元組。(假設int是4位元組)
std::cout << "Size of pointer:"<< sizeof(p) <<"bytes\n" ; // 返回指標的大小,通常是8位元組 (假設64位系統)
std::cout << "Size of object:"<< sizeof(a) <<"bytes\n" ; //返回物件的大小, 通常是4位元組(假設int是4位元組)
}
點選檢視程式碼
#include <iostream>
int main()
{
int x = 5;
std::cout << (x > 0 ? "x是正數" : "x不是正數") << std::endl;
}
點選檢視程式碼
#include <iostream>
int main()
{
int a = 10;
int b = 12;
int c = (a > b ? a : b);
// 輸出結果為12
std::cout<< c;
}
點選檢視程式碼
#include <iostream>
int main()
{
// for迴圈中初始化多個變數
for(int i = 0, j = 0; i < 10; i++,j--)
{
// do something
}
// 執行多個操作
int a = 5;
int b = 10;
int c = (a+=2,b--,a + b); // c的值為16
std::cout << c;
}