[問題] vector<char>比較大小

看板C_and_CPP作者 (Polatouche)時間16年前 (2010/01/17 00:24), 編輯推噓3(3010)
留言13則, 6人參與, 最新討論串1/1
遇到的問題: 我想比較兩個vector<char>的大小 舉例: vector<char>a; bool x; a.push_back('b'); a.push_back('c'); x=a[1]>a[0]; 程式跑出來的錯誤結果: error C2059: 語法錯誤 : '數字上的損壞尾碼' 開發平台: (例: VC++ or gcc/g++ or Dev-C++, Windows or Linux) C++ 想請問要怎麼做才能讓a[1]和a[0]做比較 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 218.163.169.200

01/17 00:34, , 1F
記得array宣告時要預留一個arry空間做結束 a[2]='\0'
01/17 00:34, 1F

01/17 00:37, , 2F
我比較習慣寫成x = *(a+1) > *(a+0)
01/17 00:37, 2F

01/17 00:40, , 3F
嗯? 我以為vector在push資料以前不能access?
01/17 00:40, 3F

01/17 00:48, , 4F
喔喔= ="範例打錯 SORRY 我馬上改
01/17 00:48, 4F
※ 編輯: s0805744 來自: 218.163.169.200 (01/17 00:50)

01/17 01:09, , 5F
結果還是錯? bool換成int試試看?
01/17 01:09, 5F

01/17 01:16, , 6F
我使用g++可以正常執行並且得到結果
01/17 01:16, 6F

01/17 01:57, , 7F
那是 char 字元,不是字元陣列的字串~ @_@|||
01/17 01:57, 7F

01/17 02:00, , 8F
這一小段範例沒錯呀~
01/17 02:00, 8F

01/17 02:02, , 9F
我使用VS可以正常執行並且得到結果
01/17 02:02, 9F

01/17 02:07, , 10F
錯誤訊息 error C2059: syntax error : 'token'
01/17 02:07, 10F

01/17 02:09, , 11F
可能是其他的程式碼有打字打錯了,但是上面範例沒錯。
01/17 02:09, 11F

01/17 02:39, , 12F
std::lexicalcompare
01/17 02:39, 12F

01/19 21:29, , 13F
更正 std::lexicographical_compare
01/19 21:29, 13F
文章代碼(AID): #1BKUWlwZ (C_and_CPP)