8.1日CSP-J初賽內容總結
補充知識點:
假設結構體為 Point
型別
struct Point
{
int x, y;
}
兩種賦值方式
-
Point A; A.x = ......; A.y = ......;
-
Point A = Point{1, 2};
整體賦值,將 {}
裡的按先後賦值給 x, y
小於號重寫:優先佇列之中
bool operator < (const 結構體型別 &A) const
{
//左邊的不要寫名字,但是右邊的現在是A
return t > A.t;
}
從2022年開始,NOIP不支援 Pascal
補充知識點 完
執行一個程式碼的流程
-
編譯解釋
高階語言 \(\to\) 機器語言(高階語言 \(\to\) 低階語言)
機器語言 \(\neq\) 低階語言,\(\because\) 低階語言有很多
cpp
\(\to\)exe
-
執行
計算機語言
- 高階語言和低階語言,越貼近人越高階
- 機器語言、組合語言、高階語言依次接近人的使用方式
- 編譯性語言:高階語言 \(\to\) 機器語言 \(\to\) 執行
- 解釋性:對程式逐條執行
- 面嚮物件語言:
C++
Java
C#
Python
Objectve-C
C++中各類資料型別的大小
\(int = 4位元組=32位元\)
\(int [-2^{31},2^{31}-1]\)
\(long\) \(long=8位元組=64位元\)
\(long\) \(long[-2^{63},2^{63}-1]\)
\(unsigned\) \(long\) \(long=4位元組=32位元\)
\(unsigned\) \(long\) \(long[0,2^{64}-1]\)
\(short=2位元組\)
\(bool=1位元組\)
\(char=1位元組\)
\(float=4位元組\)
\(double=8位元組\)
\(long\) \(double=1位元組\)
一個漢字\(=2位元組\)
\(1KB = 1024bytes\)
\(1MB = 1024KB=1024^{2}bytes\)
\(1GB = 1024MB\)
\(1TB = 1024GB\)
一份C++程式碼大約1KB,一首歌曲大約5MB,一部電影大約10GB,一個硬碟大約1TB