Quick Reference

Arithmetic functions

宣告 說明/例子 標頭檔
int abs(int); int res = abs(-1); //res = 1 cstdlib
long labs(long); long res = labs(-2); //res = 2 cstdlib
double fabs(double); 返回 double 的絕對值 cmath
double sqrt(double); 取得傳入值的平方根 cmath
double pow(double,double); double res = pow(4.0,2.0); // res = 16 cmath
double exp(double); double res = exp(2.0); //res = 7.389 cmath
double log(double); 返回 $$log_{e}$$ 的值 cmath
double log10(double); 返回 $$log_{10}$$ 的值 cmath
double ceil(double); 返回最接近的大整數double res = ceil(-1.2); //res = -1.0; cmath
double floor(double); 返回最接近的小整數double res = floor(-1.2); //res = -2.0; cmath

檔案 I/O 成員函式

宣告 說明/例子 標頭檔
stream_var.open(); 串流輸入輸出的開啟,fin.open(); fout.open(); fstream
stream_var.fail(); 搭配 .open() 使用,return true 當串流開啟失敗 fstream / iostream
stream_var.close(); 關閉串流 fstream / iostream
*stream_var.bad(); stream_var 為 corrupted 時為 true fstream / iostream
stream_var.eof(); 用預讀下一個字來判別是否為 stream_var 結束。 fstream / iostream
stream_var.get(char_varable); 從 stream_var 讀入一個字元存於 char_variable 中 fstream / iostream
stream_var.getline(string_variable, max_char+1); 從 stream_var 讀入一行字串,讀入長度為 max_char+1 fstream / iostream
stream_var.peek(); //return char 預先讀一個字,但讀完又放回去,用 get 仍可讀這個字,可用於欲讀判斷 fstream / iostream
stream_var.put(char_exp); 將 char 放入 stream_var 中,可顯示或輸出檔案 fstream / iostream
stream_var.clear(); 清除 stream_var 讀取指標 fstream / iostream
stream_var.seekg(int_pos); 移動讀取指標到那個位置 如 0 或 ios::beg 表示初始 fstream / iostream
stream_var.putback(char_exp); 改變下一個要讀入的 char 成剛 putback 的 char fstream / iostream
stream_var.precision(int_exp);
//cout.precision(4);
//cout << 100.12345 << endl;
設定數字輸出的精確度達幾位,含整數(先)與小數(後)。
//輸出 100.1
fstream / iostream
stream_var.width(int_exp); 設定用多少寬度來表示輸出 (靠右顯示) fstream / iostream
stream_var.setf(Flag); 依旗標來調整輸入輸出格式,如
ios::showpoint 小數點
ios::fixed 顯示精確位小數點
fstream / iostream
stream_var.unsetf(Flag); 將輸入輸出 Flag 設定取消 fstream / iostream

Character Functions

宣告 說明/例子 標頭檔
bool isalnum(char); isalpha 或 isdigit 成立為 T 其餘為 F cctype
bool isalpha(char); 字母(大小寫皆可)為 T,其餘 F cctype
bool isdigit(char); 數字為 T,其餘 F cctype
bool ispunct(char); 可印出且非 isalnum 且非 whitespace 為 T,其餘 F cctype
bool isspace(char); whitespaces 為 T,其餘 F cctype
bool iscntrl(char); control character 為 T,其餘 F cctype
bool islower(char); 小寫字母為 T,其餘 F cctype
bool isupper(char); 大寫字母為 T,其餘為 F cctype
int tolower(char); 回傳小寫的 ascii code number cctype
int toupper(char); 回傳大寫的 ascii code number cctype

C-String functions

宣告 說明/例子 標頭檔
int atoi(const char a[]); 將 c-string array 轉成 int cstdlib
long atol(const char a[]); 將 c-string array 轉成 long cstdlib
double atof(const char a[]); 將 c-string array 轉成 double cstdlib
(void) strcat(c-string_var, c-string_exp); 將 c-string_exp 的內容接在c-string_var 後,沒有長度檢查 cstring
(bool) strcmp(c-string_var1,c-string_var2); 比較兩個字串是否不同,傳 T,是不同;傳回 F,相同 cstring
(void) strcpy(c-string_var, c-string_exp); 將 c-string_exp 的內容一併複製到 c-string_var,沒有長度檢查 cstring
(int) strlen(c-string_exp); c-string 長度(個數),不含 ‘\0’ cstring
(void) strncat(c-string_var, c-string_exp, limit); 從 c-string_exp,中取出 limit長度來接在 c-string_var 後面 cstring
(bool) strncmp(c-string_var, c-string_exp, limit) c-string_exp 前 limit 個字來跟 c-string_var 比較是否不同 cstring
(void) strncpy(c-string_var, c-string_exp, limit) c-string_exp 中取出 limit 個字複製到 c-string_var cstring
(void*) strstr(c-string_var, pattern); pattern 是否在 c-string_var中,回傳 null 為沒有(可用bool 來檢測),若有回傳pointer,顯示相同字串 cstring
(void*) strchr(c-string_var, char); 檢查 character 在 c-string_var 中的位置,顯示之後字串,回傳 null 為沒有(可用 bool 來檢測) cstring
(void*) strrchr(c-string_var, char) 檢查 character 在 c-string_var 中最後的位置,顯示之後字串,回傳 null 為沒有(可用 bool 來檢測) cstring
(void) memset(array, initValue, sizeof(array)) 針對 array 內所有元素進行初始化,其初始值為 initValue cstring

String function:皆須 header string

類型 方法
建構子(x3) string name, name2(string), name3(c-string);
取得字串內元素 name[i]; name.at[i]; name.substr(Pos, Length);
指定/修飾 name1 = name2; name1 += name2; name1.empty();
name1.insert(Pos,Str); //插入 Str 字串於 name1 中
比較 ==; !=; <; >; <= ; >= //依 ascii 及每個字比,似字典
find (int) name.find(str); (int) name.find(Str,Pos); //沒有 null
swap swap(a,b); //a,b 相同資料型態,亦含 struct,class
to const char array str.c_str(); //需用指標或一個一個存入 char 陣列中
取得長度 Str.length(); //類似 strlen(cstr_exp) ,不含 ‘\0’

Random Number Generator:以時間種子為例

使用 取得範圍
//#ctime
void srand((unsigned) time(0))
int rand() % (range);

三角函數:皆須引用 cmath

使用 說明
double (TrigonFunc)(double); TrigonFunc 為 sin、cos、tan、acos、sinh

演算法

宣告 說明/例子 標頭檔
(void) sort(memPos, memPos+Length); 對記憶體位址 memPos,及此位址開始往後 Length 個元素,進行排序 algorithm

results matching ""

    No results matching ""