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)如果我们就是想要打印出转义字符的“原貌”,方法是:在该转义字符前加一个\,正如大家在例子中看到的。

时间: 2024-10-07 05:06:46

C++字符串与转移字符的相关文章

python之转移字符(学习笔记三)

python之转移字符(学习笔记三) 转义字符 \ 可以转义很多字符,比如 \n 表示换行, \t 表示制表符,字符 \ 本身也要转义,所以 \\ 表示的字符就是 \ ,可以在Python的交互式命令行用print打印字符串看看: 命令: >>>print 'he\'s a boy.' >>>print 'I\'m learning\nlinux.' >>>print '\\\n\\' 截图: 如果字符串里面有很多字符都需要转义,就需要加很多 \ ,为

转移字符

今天看到这个 out.println("open(\"jd.jsp\",\"_self\")"); 其中open中 这个\"\"不是很明白 求详细的说一下 \"这个是转义字符,用来表示双引号["],因为在java中两个双引号之间的部分表示为字符串,就好比123是int,但是"123"就是字符串.那么现在回到你的问题,机器不能理解人的意思,如果不是用\",它会认为"op

1.判断字符串中的字符是否唯一

如果我们假设字符集是ASCII字符,那么我们可以开一个大小为256的bool数组来表征每个字符的出现.数组初始化为false,遍历一遍字符串中的字符,当bool数组对应位置的值为真, 表明该字符在之前已经出现过,即可得出该字符串中有重复字符.否则将该位置的bool数组 值置为true. 核心代码: 1 bool isCharUnique(string s) 2 { 3 bool a[256]; 4 int i =0; 5 memset(a,0,sizeof(a)); 6 int len = s.

替换字符串中的字符 - replace()

<style>body{background:#000000;color:#FFFFFF;text-align:center;}hr{margin:30px;}h1{color:#FFFFFF;margin:30px;}</style> <script>//replace() 方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串. function myFunction(){ var str=document.getElementById(&qu

题目1049:字符串去特定字符(简单字符判断)

题目链接:http://ac.jobdu.com/problem.php?pid=1049 详解链接:https://github.com/zpfbuaa/JobduInCPlusPlus 参考代码: // // 1049 字符串去特定字符.cpp // Jobdu // // Created by PengFei_Zheng on 26/04/2017. // Copyright © 2017 PengFei_Zheng. All rights reserved. // #include <s

九度oj 题目1049:字符串去特定字符

题目1049:字符串去特定字符 时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:10173 解决:4611 题目描述: 输入字符串s和字符c,要求去掉s中所有的c字符,并输出结果. 输入: 测试数据有多组,每组输入字符串s和字符c. 输出: 对于每组输入,输出去除c字符后的结果. 样例输入: heallo a 样例输出: hello 1 #include <iostream> 2 #include <string> 3 using namespace std; 4 5 i

【LintCode】判断一个字符串是否包含另一个字符串的所有字符

问题描述: 比较两个字符串A和B,确定A中是否包含B中所有的字符.字符串A和B中的字符都是 大写字母. 样例 给出 A = "ABCD" B = "ACD",返回 true 给出 A = "ABCD" B = "AABC", 返回 false 注意事项 在 A 中出现的 B 字符串里的字符不需要连续或者有序. 问题分析: 实质上利用的是哈希表的思想.只有大写字母,一共26个,遍历A的时候,往里面压,遍历B的时候,往外边弹,如果

字符串去特定字符-2009年哈尔滨工业大学计算机研究生机试真题

题目描述: 输入字符串s和字符c,要求去掉s中所有的c字符,并输出结果. 输入: 测试数据有多组,每组输入字符串s和字符c. 输出: 对于每组输入,输出去除c字符后的结果. 样例输入: heallo    a 样例输出: hello 解题代码: 解法1:使用两个数组, 第二个数组存储去掉特定字符的字符串 #include <stdio.h> int main(){ char arr[200]; char arrNew[200]; char focus; while (scanf("%

字符串中单个字符的用法

我们使用字符串时经常要对字符串中单个字符进行处理,比如检测一个string对象是否包含空白,或者把string对象中的字母大写改为小写,查看某个特定字符是否出现,判断字符串是否为数字等等. 这类处理的关键是要获取字符本身.有时需要处理string对象中的每一个字符,另外一些时候则只需处理某个特定的字符,还有些时候遇到某个条件处理就要停下来. 在cctype头文件中定义了一组标准库函数处理字符串的工作. cctype头文件中的函数 isalnum(c)    当c是字母或数字时为真 isalpha