我用文本編輯器將某個源代碼複製並粘貼到我的程序中。我基本上需要確認源代碼以「int main()」開頭,所以我繼續前進,將行與「int main()」進行比較,但比較總是返回false。在字符串中神祕地加了引號
我決定將字符串剝離成字符,發現奇怪的東西。
所以串線有「INT主要()」,通過裏面這是一個已經被粘貼在文本編輯器的文本。你可能會認爲A和B將具有相同的特點,但他們不這樣做:
我真的不知道哪裏是在一開始就知道引號來源。原始字符串不包含它,調試器不顯示它(否則它會顯示「\」int main()\「」)。這裏發生了什麼?
編輯:我試過line = line.Trim()。那個角色還沒有消失。顯然這是零寬度不間斷空間的一些特殊的unicode字符。我怎樣才能從我的字符串中刪除這個?
在您的文章'line'賦值語句。我認爲它應該是 - 'line =「\」int main()\「」;' – adatapost
@AVD就是這樣,事實並非如此。您在上面看到的調試器工具提示正是在行內傳遞的。 – l46kok
您是否從互聯網複製和粘貼?該Unicode字符代碼(65279)對應於零寬度的空間,這將難以在視覺上辨別。見http://www.fileformat.info/info/unicode/char/feff/index.htm –