c++,字符串为什么只能减单引号?

leetcode67题做的时候遇到的,答案的代码如下

 class Solution {
public:
    string addBinary(string a, string b) {
        string res = "";
        int m = a.size() - 1, n = b.size() - 1, carry = 0;
        while (m >= 0 || n >= 0) {
            int p = m >= 0 ? a[m--] - '0' : 0;
            int q = n >= 0 ? b[n--] - '0' : 0;
            int sum = p + q + carry;
            res = to_string(sum % 2) + res;
            carry = sum / 2;
        }
        return carry == 1 ? "1" + res : res;
    }
};

关键就是这句话:

             int p = m >= 0 ? a[m--] - '0' : 0;

这里- '0'是为了什么呢?我把- '0'写成了- "0"为什么就是错的呢?

1个回答

因为ascii码中0 1 2 3 4 5 ... 依次为48 49 50 ...
因此 字符-'0' 相当于将字符转换为数字。比如
'3'的ascii是51, '3' - '0' = 51 - 48 = 3
这里和字符串没有任何关系。'3' - "0" = ?

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
c++,字符串为什么只能减单引号?
leetcode67题做的时候遇到的,答案的代码如下rn rnrn```rn class Solution rnpublic:rn string addBinary(string a, string b) rn string res = "";rn int m = a.size() - 1, n = b.size() - 1, carry = 0;rn while (m >= 0 || n >= 0) rn int p = m >= 0 ? a[m--] - '0' : 0;rn int q = n >= 0 ? b[n--] - '0' : 0;rn int sum = p + q + carry;rn res = to_string(sum % 2) + res;rn carry = sum / 2;rn rn return carry == 1 ? "1" + res : res;rn rn;rn```rnrn关键就是这句话:rnrnrn```rn int p = m >= 0 ? a[m--] - '0' : 0;rnrn```rnrn这里- '0'是为了什么呢?我把- '0'写成了- "0"为什么就是错的呢?
为什么 从TEXTAREA取出来的字符串中的 单引号 变成了 /单引号
UFT-8代码。从TEXTAREA取出来的字符串,保存到文件里,留下次作为html的内容显示。简单的类似留言板的处理。rn我通过下面的过滤器总算把 / 给弄掉了。rnrn'变成了 /'rn" 变成了 /"rn 这是为什么?rnrnmb_internal_encoding("UTF-8");rn...rn...rn...rn$xxx = $_REQUEST['xxx'];rn$xxx = MultiLineFilter($xxx);rn...rn[b]function MultiLineFilter($strDat)rnrnrn[color=#FF0000]再这里用echo一个字一个字地观察$strDat[/color], 变了。rnrn $strDat = htmlspecialchars($strDat);rn $strDat = nl2br($strDat);rn $strRet = "";rn for ($i = 0; $i < strlen($strDat); $i ++)rn rn if (ord($strDat[$i]) == 9)rn $strRet = $strRet . " ";rn else if (ord($strDat[$i]) == 92)rn rn if (ord($strDat[$i+1]) == 92)rn rn $strRet = $strRet . $strDat[$i];rn $i ++;rn rn rn elsern $strRet = $strRet . $strDat[$i];rn rn return $strRet;[/b]
C语言定义字符串“双引号”和字符“单引号”
最近写编译器的时候发现一个问题:就是对于字符的匹配例如对于双引号,如果是一个字符,那么'&quot;'就可以了,但如果字符串&quot;&quot;&quot;就会报错。所以,使用转义字符例如\'  ,\&quot; ,等等所有的ASCII码都可以用“\”加数字(一般是8进制数字)来表示。而C中定义了一些字母前加&quot;\&quot;来表示常见的那些不能显示的ASCII字符,如\0,\t,\n等,就称为转义字符,因为后面的字符,都不是它本来的ASCII字符意思了...
单引号字符串、双引号字符串和转义符
本课程会对Python的基础知识做了深入的介绍,如Python模块、声明变量、数字、进制转换、获取用户输入、长字符串等。n本系列课程一共20套,每一套视频课程会深入讲解Python的一类知识点。Python是当今炙手可热的编程语言,可用于多个领域,人工智能、大数据、Web开发、移动开发、运维等。
字符串单引号替换为两个单引号
[code=C#]rnmsg.Message.Replace("'", "''");rnmsg.Message.Replace("\'", "\'\'"); rn[/code]rnrn都不行 求帮助
删除字符串里的单引号
删除字符串中的单引号,例子如下所示: String str = "'999'"; System.out.println(str); // '999' str = str.replace("'", ""); System.out.println(str); // 999
字符串加上单引号
str = "sa,dfdf,dsfds,dsffsd"rn如何将str变为rn"'sa','dfdf','dsfds','dsffsd'"rn要求用简单方便的方法实现。
3-6 字符串:单引号与双引号
3-6 字符串:单引号与双引号1、str-----字符串2、表现方式: 单引号:>>> 'why' 'why'双引号:>>> "why" 'why'三引号:当字符串特别长的时候,可以用三引号来写: >>> '''haha sdfdsf sdf sd
如何将字符串加上单引号?
如字符串“abcd”rn变为:“'abcd'”rn以前我用过有一个函数有这种功能,但是忘记了。
带单引号字符串问题
我的字符串需要带单引号,如 20‘Frn但是不管用双引号内带单引号,还是用转义符~’ ,还是两个一起用,rngjzz字符串就是显示 国际中转: ... X20 转义符后面的字符串都不现实,求解。rn赋值语句如下rngjzz='国际中转:'+string(zzf20)+"X20~'F"
perl - 单引号和双引号字符串
单引号字符串与双引号字符串有两个区别, 一是没有变量替换功能, 二是反斜线不支持转义字符,而只在包含单引号和反斜线时起作用。单引号另一个特性是可以跨多行 环境:perl 5.20.2 $a = 'abc'; print 'aaa bbb ccc\'\n$a'; print "\n"; print "aaa bbb\n ccc$a"; 结果: aaa bbb ccc'
字符串 ?单引号?双引号?? 急
string str ;rnstr += "open('url','name')";//window对象的open方法rnrn如上语句,加入url="http://192.168.65.55?id=[color=#FF0000]arry[i]",[/color]但是这个附加参数是一个变量,怎样才能正确的应用单引号,双引号使其正确实现其功能呢???rnrn把上面的url全部放到open方法中该怎样写??rnrnstr += “open( ,)”;
关于字符串(单引号)问题
rnrnprocedure TForm1.Button2Click(Sender: TObject);rn var rn s,s1:string;rn i:integer;rn beginrn i:=1;rn s:='aaa'+ inttostr(iii);rn sss:= 'insert into test(t1,t2,t3) VALUES ('''+s2+''',''bbb'','+inttostr(i)+')';rn end;rnrnrn得到sss为:rnrn    insert into test(t1,t2,t3) value ('aaa1','bbb',1)rnrn是我想要的结果。为什么?rnrnrnrn rnrnrn
delphi 字符串加单引号
var s:string; begin s:='a'; ShowMessage(s.QuotedString); ShowMessage(QuotedStr(s));
oracle 单引号中含有字符串
如: strSql := 'select * from tb where name=''abc'''; abc两边各加两个单引号即可。
perl的单引号字符串的问题。
perl的单引号字符串被设计成为 “尽量保持单引号内部的内容,也就是说你写的是什么,你用print输出就是什么”。rnrn有两个特殊 一个是 '\',另外一个是 ' ‘ ',后一个很好理解,因为字符串本身需要判断结束的位置,所以要用\'来表示'.rn疑问的是为什么‘a\\b’和‘a\b’是一样的,这不就与设计初衷相反了吗,没必要用\\来表示\吧?rnrn求解答,谢谢。
sql 如果是字符串只过滤单引号就够了吗?
??
C中的双引号与单引号
1.   ’ ’ 引起的一个字符代表一个整数,整数值对应于该字符在编译器采用的字符集中的序列值;        ” ”引起的字符串代表的是一个指向无名数组起始字符的指针。 2.  用" "引起来的是字符串,在C语言中没有专门的字符串变量,通常用一个字符数组来存放一个字符串。字符串总是         以'\0'作为串的结束符。因此当把一个字符串存入一个数组时,也把结束符 '\0'存
C语言 单引号和双引号
      刚开始学习C语言时没有注意过这个问题,最近看了狄泰软件的唐老师C进阶视频时发现这里面还有东西需要注意的,下面我讲下,希望对新人有所帮助(这里面讲的内容主要参考狄泰软件的唐老师C进阶教程中的单引号和双引号课题)      单引号:单引号实际就是字符字面量,字符字面量就是字符(就是ASCII对应字符),就是整数     双引号:双引号实际就是字符串字面量,字符串字面量就是字符指针,就是字符...
【C】 14_单引号和双引号
单引号和双引号 C 语言中的单引号用来表示字符字面量 C 语言中的双引号用来表示字符串字面量 'a' 表示字符字面量,在内存中占用 1 个字节,'a' + 1 表示 ASCII码加 1 ,结果为 b "a" 表示字符串字面量,在内存中占用 2 个字节,"a" + 1 表示指针运算,结果指向 "a" 结束符 \0 实例分析:单引...
ES6 反单引号 字符串模板
var x = "abc"; console.log(`start ${x} end`);
flash与字符串:双单引号的中文
收录比较有意思的正则,因为检查双引号里面的中文经常这样处理,打算在Egret里面也尝试一下这样的做法。目前想到的方案就是对每一行里面双引号进行匹配是否含有中文一般采用 以下的正则去进行检测。var chinaReg:RegExp = /[\u4e00-\u9fa5]/gi;双引号和单引号的处理第一种情况是比较常用的匹配双引号的情况var reg:RegExp = new RegExp("\"(.*
javascript字符串单引号与双引号的区别
最近在使用javascript编程,遇到使用字符串的情况 写了一点测试代码 var str = 'This is Jack'; var str2 = 'This is Tom'; var str3 = 'This is "Rose"'; var str4 = "This is 'LiLi'"; var st
Ruby字符串单引号和双引号的区别
    Ruby的字符串对象生成有两种方式,字符串文字值加单引号或加双引号。       两种方式主要区别在于构造文字量时,对字符串的处理次数不同。       单引号时,Ruby对字符串值不做处理,里边是什么就是什么。       双引号时,Ruby首先要查找文本中要替换的字符,即带反斜杠的字符,用二进制替换。最常见的就是\n;其次,这种方式下可以插入表达式#{...},那就要处理...
怎么在字符串中加入单引号
要得到这样的字符串 ‘123’;怎么作或者用什么函数?rn谢谢诶
JSON 字符串 单引号双引号 处理
字符串转JSON         JSON.parse(str) JSON 转字符串 JSON.stringify html5的data-*属性需要存储JSON 数据,需要转化成JSON 字符串 但是因为双引号的原因,导致字符串解析式格式错误。 解决方法: 用 encodeURI 编码字符串 存储,字符串中的双引号会转换成 类似 %22 的字符 然后用deco
C# 提取单引号内的字符串
X:='ABC’rnrnC#中提取单引号内的字符串rnrn 得出:ABC
PowerShell单引号字符串和双引号字符串的区别
输入字符串表达式时,可以使用单引号(”)或双引号(“”)括住字符串,但PowerShell解析单引号和双引号中字符串的方式是不同的。更多请看(www.omob.cc) 一、单引号括住的字符串,字符串被精确地传递到命令,字符串中包含的任何表达式都不会被计算,只会被解释成文本。例如: $varA=200 Write-host 'The value of $varA is $varA.' 输出为...
PHP学习:单引号和双引号字符串
单引号和双引号字符串的区别。
php字符串及单引号和双引号的区别
双引号和单引号的区别: 双引号是解析变量的,单引号不解析变量 当内容和和定界符冲突的时候,需要使用转义符:\' 代表 ' 引号,\" 代表 " 引号 双引号解析所有的转义符 单引号只解析 \\ \'两个转义符。
转换字符串后单引号怎么办?
使用`[str UTF8String]` 或者 `[str cStringUsingEncoding:NSUTF8StringEncoding]`rnrnNSString:rnrn Nikita's iPadrnrn输出:rnrn Nikita\xe2\x80\x99s iPadrnrn单引号`'`怎么办?
怎样把字符串单引号去掉
var rnstr:string;rncutstrrnbeginrnstr:='#$a5#$0a#$01#$00#$08#$08#$08#$08#$08#$08#$0b#$a6'; //有单引号的字符变量rncutstr:=str; //我能通过什么方法把cutstr:=#$a5#$0a#$01#$00#$08#$08#$08#$08#$08#$08#$0b#$a6 变成这样。rnend;
如何去到字符串旁边的单引号?
是这样的,a.asp上有个链接b.asp?lb='工人'&page=1rn在b.asp里,request("lb")的值<%response.Write(lb)%>就变成了'工人'rn也就是:如果a=request("lb")那么 a="'工人'"了,请问应当怎么做?rn或者怎么去掉左右的单引号(这个字符串的长度是不定的)?谢谢!
怎样才能在字符串里面插入单引号
怎样才能在字符串里面插入单引号
如何去掉字符串(string)的单引号
如标题。rnrn' 您母亲出院后应及时办理完毕出院结算手续。否则,即使您母亲已经出院,但是未办理完毕结算手续,在此期间发生的门诊费用医疗保险统筹基金不能予以报销。',rnrnrn这是那段字符串,我想把他添加到数据库中的一个字段里,可是'Times' 附近有语法错误,怎么办????
php单引号中双引号的字符串
php单引号的字符串只会转义 ‘ 和 \ 反斜杠其他转义都不会包括 例如 \n  \t 例子: print'I have gone to the store.D'; print''; print'I\'ve gone to the store.D'; print''; print'Would \\ you pay $1.75 for 8 ounces of tap
JavaScript字符串单引号和双引号的使用
在JavaScript程序中的字符串直接量, 是由单引号或双引号括起来的字符序列. 由单引号定界的字符串中可以包含双引号, 由双引号定界的字符串中也可以包含单引号.需要注意的是, 当使用单引号来定界字符串时, 需要格外小心英文中的缩写和所有格写法, 比如can’t和O’Reilly. 因为撇号和单引号是同一个字符, 所以必须使用反斜线()来转义所有的撇号.在客户端JavaScript程序设计中, J
字符串,分割并添加单引号
public static void main(String[] args) { StringBuffer groupsSplit = new StringBuffer(); String result = &quot;&quot;; String groups = &quot;a,b,c,d&quot;; if (groups.contains(&quot;,&quot;)) { String[] split = groups.s...
字符串中的单引号和双引号的替换
value //原字符串rn要把其中的单引号替换为\'(两个字符)rn和双引号替换为\"(两个字符)rn我的做法:rnENValue(替换后的字符)rnENValue=Value.Replace("\"","\\\"");rnENValue=Value.Replace("\'","\\\'");rn结果只替换了单引号rn但如果写成:rnENValue=Value.Replace("\'","\\\'");rnENValue=Value.Replace("\"","\\\"");rn则只替换双引号rnrn真的好难过!rn
字符串中如何包含单引号'?
在delphi中字符串用'来代表字符串的起始和终结,请问如何在字符串中包含'呢?
相关热词 c# 标准差 计算 c#siki第五季 c#入门推荐书 c# 解码海康数据流 c# xml的遍历循环 c# 取 查看源码没有的 c#解决高并发 委托 c#日期转化为字符串 c# 显示问号 c# 字典对象池