如何解决\ n在扫描两个整数如scanf“%d \ n%d”时有什么用?
我在Hackerrank的一个编码问题的预完成部分中找到了上述类型的代码。我想知道\n
会做什么?有什么区别吗?
解决方法
阅读一些不错的C reference网站,也许还有C11标准n1570,甚至还有Modern C。
scanf(3)的文档说明了格式控制字符串中Ext.define('ComboOverride',{
override: 'Ext.form.field.ComboBox',onFieldMutation: function (e) {
var inputDom = this.inputEl.dom;
if (Ext.String.hasHtmlCharacters(inputDom.value)) {
inputDom.value = '';
alert('XSS Detected,Removing');
}
return this.callParent(arguments);
}
});
的情况。像空格\n
一样处理它,并匹配输入流中的一系列空格字符(例如
或' '
或'\t'
)。
如果您明确想解析行,则可以使用诸如GNU bison之类的解析器生成器,和/或首先使用fgets(3)或getline(3),然后使用sscanf(3)。
别忘了处理错误案例。参见errno(3)。考虑使用EBNF表示法记录程序的有效输入。
研究启发性的现有开源程序,包括GNU bash或GNU make的源代码。请注意,到2020年,UTF-8应该在所有地方使用(那么您可能想使用libunistring,因为它是free software,所以您可以研究和改进其源代码)。
如果您使用Linux,请考虑使用gdb(1)或ltrace(1)来了解程序的行为。当然,请阅读C编译器(可能是GCC)和调试器(可能是GDB)的文档。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。