C++字符串與轉義字符,先看以下代碼:
#include<iostream>
#include<string>
using namespace std;
int main()
{
string str1("[\t]");
cout << str1 << endl;
cout << "[\t]" << endl;
cout << "[ ]" << endl;//[]裡邊有7個空格
string str2("\t");
cout << str2.length() << endl;
string str3("\\t");
cout << str3 << endl;
cout << "\\t" << endl;
cout << str3.length() << endl;
return 0;
}
結果如圖:
可見:
(1)無論是string類型還是char*類型,其中的轉義字符的輸出都是該轉義字符所表示的含義而不是轉義字符的圖形(仔細想想,若非如此,那轉義字符就對不上“轉義”二字了)。
(2)整個轉義字符(如\t)占一個字節(而不是\占一個t占一個,因為它們本身就是一個整體,是一個字符)。
(3)如果我們就是想要打印出轉義字符的“原貌”,方法是:在該轉義字符前加一個\,正如大家在例子中看到的。