Re: 用C++ 檢查大括號左右對稱

看板Programming作者 (泡泡蟲蟲)時間18年前 (2006/07/30 10:40), 編輯推噓5(508)
留言13則, 4人參與, 最新討論串2/6 (看更多)
※ 引述《munson.bbs@bbs.ntu.edu.tw (無)》之銘言: : 請問 如何用C++寫一個執行速度快 效率高 : 的檢查大括號的程式? : 謝謝. bool lala(char *str) { int i,n=0; for(i=0;i<strlen(str);i++){ if(str[i]=='{'){ n++; }else if(str[i]=='}'){ n--; } if(n<0){ return FALSE; } } if(n>0){ return FALSE; }else{ return TRUE; } } 以上不知道有沒有bug 喔對了... 請自行改成C++的寫法喔 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.62.42.61 ※ 編輯: gmobug 來自: 61.62.42.61 (07/30 10:46) ※ 編輯: gmobug 來自: 61.62.42.61 (07/30 10:47) ※ 編輯: gmobug 來自: 61.62.42.61 (07/30 10:52) ※ 編輯: gmobug 來自: 61.62.42.61 (07/30 10:57)

07/30 11:03, , 1F
可是如果程式中有.. char *str="{hi";
07/30 11:03, 1F

07/30 11:07, , 2F
這樣..不就不對稱了嗎??還是我看錯問題...
07/30 11:07, 2F

07/30 11:09, , 3F
喔我大概懂你的意思
07/30 11:09, 3F

07/30 11:09, , 4F
如果他是要解析算式,用我的寫法沒問題
07/30 11:09, 4F

07/30 11:09, , 5F
如果是要解析程式碼,就不行了
07/30 11:09, 5F

07/30 11:10, , 6F
我寫這段原本是用來解析算式的
07/30 11:10, 6F

07/30 11:10, , 7F
要解析程式碼還要再加上',",\的處理
07/30 11:10, 7F

07/30 11:11, , 8F
那個在編譯器設計相關書裡面應該會講吧(?)
07/30 11:11, 8F

07/30 11:16, , 9F
可能還要注意 註解 和 前置
07/30 11:16, 9F

07/30 11:26, , 10F
它題目不清不楚 誰知道要檢查什麼東西的括號
07/30 11:26, 10F

07/30 11:27, , 11F
沒有必要為它浪費時間去幫它想答案
07/30 11:27, 11F

07/30 15:44, , 12F
嗯恩~~
07/30 15:44, 12F

07/31 00:27, , 13F
難怪,以前經驗是:
07/31 00:27, 13F
文章代碼(AID): #14p1mBZ6 (Programming)
文章代碼(AID): #14p1mBZ6 (Programming)