首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >STAssertEqualStrings中的转义序列

STAssertEqualStrings中的转义序列
EN

Stack Overflow用户
提问于 2008-11-03 22:31:14
回答 1查看 606关注 0票数 0

我正在针对Cocoa编写一个发现测试,因为我正在学习与Mac相关的所有内容。目前,我正试图找到编码字符串的URL的最佳方法。使用用于Mac的Google工具箱,我有一个单元测试,我故意在以下方面导致失败:

代码语言:javascript
复制
 NSString* expected = @"ab%%20c";
 NSString* encoded = @"ab c";
 STAssertEqualStrings(expected, encoded, @"Expected [%s] actual [%s]", [expected UTF8String], [encoded UTF8String]);

它抱怨"ab P != ab c“它在输出中抛出的垃圾。这就好像百分之的标志没有正确的逃脱,但我知道它是。我的主要问题是如何得到一个正确的错误信息,这样我就可以确定我正在处理的是苹果而不是橘子。

*update堆栈溢出正在删除我原来帖子中的垃圾。上面的失败是为了说明故障消息的一个问题。我关心的是失败消息中显示的垃圾,因为它做的很干净,而不是详细说明实际字符串中的内容。失败说明了“断言失败-符号!= ab c”,其中我在消息中得到一个苹果字符,而不是一个百分比符号。实际上,编码是方法调用的返回,我想使用断言失败消息检查字符串的内容。

EN

回答 1

Stack Overflow用户

发布于 2008-11-04 09:38:51

您混淆了反斜杠转义(它在编译时应用)和百分号转义(百分比符号转义),后者被应用于printf-like函数和方法格式化字符串。因为expected没有被这样的函数处理,所以%的符号没有转义任何东西。

也就是说,除非StackOverflow正在破坏您的消息,否则百分比符号应该出现在“ab %c != ab c”中。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/260214

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档