看板 b92902xxx 關於我們 聯絡資訊
※ [本文轉錄自 aacs0130 信箱] 作者: aacs0130.bbs@ptt2.cc ("aacs0130.bbs@ptt2.cc") 標題: Re: 新手計程注意事項 時間: Tue Nov 4 10:15:54 2003 作者: flyhermit (低徊顧影無顏色) 看板: Segeliin 標題: Re: 新手計程注意事項 時間: Tue Nov 4 09:30:46 2003 ※ 引述《aacs0130 (幸福的啵啵啵)》之銘言: : 1.scanf array 不要加& 因為scanf後面的參數要傳址給scanf這函數 才能把值放進去, 而array本身就是一個指標指向array第一個元素, 所以不用加& P.S. int a[5]; a[3]其實就是從a這個位址走3個int大小的位址所指到的值 所以這是一個好理由解釋為什麼array的index是從0~n-1而不是1~n了 : 2.printf 不要加& 因為只要輸出就好了, 所以傳值就夠了 : 3.==不要打成= 這是初學者的精典bug : 4.{}要對稱..不要少打右括號 用vim之類的editor就不會有這種問題了 很容易發現錯誤:p : 5.A=B...要變的要寫在前頭 : 6.int array[]=0; @_@ 沒用過 : char array[]={'\0'}; 外部變數預設會先歸0 而內部變數預設不會歸0 (只是給你一塊空間, 裡面都是垃圾) 至於int a[5] = { 3 }; 印象中他好像會把a[0]=3, 而a[1]~a[4]都為0 而'\0'本來對應到的值就是0了, 所以char a[5]={'\0'}; 可以把所有東西都變成'\0' int a[] = { 1, 2, 3 }; 意思跟 int a[3] = {1, 2, 3}; 一樣 : 7.讀%c遇到換行符號多讀一次 用%s吧, 怕錯的話 以前學c, 一開始只能用getchar(), 雖然辛苦 但覺得字元字串這些觀念學得還算紮實 : 8.不要忘了; 初學者極精典bug!! : 9.for(a;b;c)三項用;隔開 : 10.switch 完記得要break 喔喔, 很可怕的bug 不過我喜歡用if else : 11.%s不讀換行字元.空白 %c讀 %s是用空白字元來separate字串的 '\n' '\t' ' ' 三個合稱叫做空白字元 : 12.array從0開始 -- ╔╗ ╔ ╬ ╠╣ ╔╬╔╗ ══╗╗ ╚╣═╗ ╬╗╠╣ ╬║╝ ╦║╚╝ ╔╝ ╯ ║╝ ║ ╚╝╚╚╝ ╗╠╚╗ ╬╬╗╗╔ ╰╯ ╚╣╔╬ ║╔ ◇ ╗ ╠╩╗╚╝╔║║╚═ ╚╝ ╝╚═╝╚ ╚══╚╝║ ﹋ -- ※ 發信站: 新批踢踢(ptt2.cc) ◆ From: 218.184.97.189
polaristin:精闢的講解阿..*^^* 推 140.112.30.172 11/04
-- Q:為什麼aacs叫小西呢?? A:1.因為aacs的英文名字叫Cicilia Segeliin 2.因為西是最好寫的C 3.西是由一條拋物線+一組雙曲線+一個橢圓組成的 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.171.150