#include
#include
char* strcpy(char *strdest, const
char *strsrc) //將源字串加const表明為輸入引數
bool 型別: if (!var)
int 型別:if (var == 0)
float型別:
const float epsinon = 0.00001
if ((x >= -epsinon) && (x <= epsinon))
指標變數: if (var == null)
剖析:
考查對0值判斷的「內功」,bool 型變數的 0 判斷完全可以寫成 if (var == 0), 而int 型變數也可以寫成 if (!var),指標變數的判斷也可以寫成 if (!var),上述寫法雖然程式都能正常執行,但是未能清晰地表達程式的意思。
一般的,如果想讓 if 判斷乙個變數的「真」、「假」,應直接使用 if (var)、if (!var),表明其為「邏輯」判斷;如果用 if 判斷乙個數值型變數(short、int、long等),應該用 if (var == 0),表明是與 0 進行「數值」上的比較;而判斷指標則適宜用 if (var == null),這是一種很好的程式設計習慣。
浮點型變數並不精確,所以不可將 float 變數用「==」或「!=」與數字比較,應該設法轉化成「>=」或「<=」。如果寫成 if (x == 0.0),則判為錯。
#ifndef __incvxworksh
#define __incvxworksh
extern "c"
#endif
#endif /* __incvxworksh */
標頭檔案中的編譯巨集
#ifndef __incvxworksh
#define __incvxworksh
#endif
的作用是防止被重複引用。
作為一種物件導向的語言,c++支援函式過載,而過程式語言c則不支援。函式被c++編譯後在symbol庫中的名字與c語言的不同。例如,假設某個函式的原型為:
void foo(int x, int y);
該函式被c編譯器編譯後在symbol庫中的名字為 _foo,而c++編譯器則會產生像 _foo_int_int 這樣的名字。_foo_int_int 包含了函式名和函式引數數量及型別資訊,c++就是靠這種機制來實現函式過載的。
為了實現 c 和 c++的混合程式設計,c++提供了c連線交換指定符號 extern 「c」 來解決名字匹配問題,函式宣告前加上 extern 「c」 後,則編譯器就會按照c語言的方式將該函式編譯為 _foo, 這樣c語言中就可以呼叫c++函式了。
#include
#include
#define maxline 255
void loopmove(char *str, int steps)
; strcpy(tmp, str+len-steps);
strcpy(tmp+steps, str);
*(tmp+len) = '\0';
strcpy(str, tmp);
}int main()
#include
#include
#define maxline 255
void loopmove(char *str, int steps)
; memcpy(tmp, str+len-steps, steps);
memcpy(tmp+steps, str, len-steps);
*(tmp+len) = '\0';
memcpy(str, tmp, len);
}int main()
面試經典70題
2 你覺得你個性上最大的優點是什麼?3 說說你最大的缺點?4 你對加班的看法?5 你對薪資的要求?6 在五年的時間內,你的職業規劃?7 你朋友對你的評價?8 你還有什麼問題要問嗎?9 如果通過這次面試我們單位錄用了你,但工作一段時間卻發現你根本不適合這個職位,你怎麼辦?10 在完成某項工作時,你認為...
python面試經典題 Python經典面試題
1 邏輯運算子的運算 and or not 優先順序,not and or print not 2 1 and 3 4 or 4 5 and 2 1 and 9 8 or 7 6 f x or y x true,則返回x print 1 or 2 1 print 3 or 2 3 print 0 o...
iOS面試 iOS面試經典題 NO 9
1 上傳檔案中文檔名亂碼問題 在ios客戶端將檔名用url encode編碼,然後在服務端用url decode解碼。客戶端 nsstringencodingenc nsutf8stringencoding request setdata datawithfilename filename stri...