1. 程式人生 > >C語言學習一個月後感想

C語言學習一個月後感想

cnblogs 解決 變量 .net 讓我 一點 std har del

C語言學習一個月後感想


感謝李曉東老板及計算機工程師聯盟的學長學姐和某神秘同級同學的辛勤指導,感謝宋雨田的督促和陪伴。


初識C的1、、體會

我本以為憑借瓜皮思維和花裏胡哨操作可以讓我熟練地學習語言,現在發現只是python的易入門給我的錯覺。。。錯用列表賦值帶來的稀奇古怪的初始值,scanf中百度已經無法解決的錯誤,時不時崩潰的codeblock,我永遠無法知道到底在那裏出錯的oj(wa,時間溢出,數據溢出,編譯錯誤)······好吧我知道這不是問題。(??へ??╬)
但願吧。


我是貝爾格裏爾斯,我將向你展示如何在c語言中各種極端的地方死亡~


  1. poj中要使用C89標準,變量名需要提前聲明;
  2. 與python有極大不同的一點,列表(或者說數組)中的元素不能後期添加,所以需要先聲明長度。strlen不能用於測量int數組長度,sizeof(a)/sizeof(int)僅能測量int a[20]中的20。如果想測實際輸入的元素個數,請乖乖加入變量計數(也可使用瓜皮函數len);
  3. 註意{}的範圍,不然會在初始化中死亡;
  4. 奇怪初始化錯誤1:int a[6];a[0]=1;則a[1]=0(唯一可考),之後全為莫名其妙數。
  5. 奇怪初始化錯誤2:循環中使用scanf時,%d會跳過,%c不會,使用fflush(stdin);或手動初始化,否則會一直循環或輸出多個值。
  6. “”與‘’不同,“”代表字符,‘’則是ASCII碼。
  7. scanf的空格判斷等等等用法總結

一些花裏胡哨的

  1. if的奇妙冒險(a<b?(a>c?a:(b>c?c:b)):(b>c?b:(a>c?c:a)))(PS:61.c)
  2. ASCII碼轉換%c,(char)65;(a~Z:65~122)
  3. 待續

C語言學習一個月後感想