/*不經意間犯了乙個小錯誤,反映出來自己的基礎還是不夠紮實.
現在列出來,給自己提個醒.
*/
#define my_func 0
#ifdef my_func
//my function /*在這種情況下,無論 #define my_func 0 還是 #define my_func 1, 此處永為真,因為my_func 已經定義了 */
#esle
//other code
#endif
//這段code應該這樣寫, 就符合自己的邏輯了:
#define my_func 0
#if my_func
//my function
#esle
//other code
#endif
編寫C程式容易犯錯的地方
編寫c程式要注意的地方非常多,稍不留神就會掉入萬劫不復的 坑 以下就列舉一些 陣列 結構體,以及動態建立的記憶體區域必須初始化。如果不進行初始化,變數值是不可預估的!例如 struct node node node memset node,0,sizeof node if node next nul...
結構體定義容易混淆的地方
第一種 struct student student為結構體名,相當於一種資料型別。可以和int char等一樣的用法。a.這種形式用在c語言中,要宣告該結構體型別的物件,應該寫為struct student stud1 b.這種形式用在c 語言中,要宣告其物件,直接寫student stud1 第...
C C之易犯錯的地方
1 cin char str new char 100 cin str cout str endl 例如 輸入 ajfgjsfg djfhsdjgh sdjgsdjgj 輸出 ajfgjsfg說明cin讀取到直到遇到空格。2 strlen char str1 cout strlen str1 end...