如何创建新的转义序列?

时间:2015-09-20 04:40:09

标签: c escaping printf

是否可以通过转义序列自动转换printf()个字符串toupper()tolower()?怎么做?

逃脱序列是那些拥有" \"打印时反斜杠。 tolower()使您可以将大写字母转换为小写。 toupper()使您可以将小写字母转换为大写。但是是否可以创建/添加一个转义序列,它也具有与tolower()和toupper()相同的功能。例如,我将创建新的转义序列" \ u"和" \ l"。 \ u作为toupper(),它将像这样使用。

printf("\u hello world");

输出:

HELLO WORLD

转义序列旁边的字符串将转换为大写字母。对于\l tolower()也是如此。 怎么做?请帮帮我。

3 个答案:

答案 0 :(得分:1)

  

是否可以通过转义序列自动转换printf()个字符串toupper()tolower()

不,你做不到。

转义序列由语言定义。你无法添加它们。

答案 1 :(得分:1)

  • 您可以将新功能设为Printf_new(),并且可以解析
  • 其参数并获取\i\u并视情况而定
  • 呼叫 toupper()tolower()转换您的字符串,然后再次
  • 呼叫 原printf()

答案 2 :(得分:0)

没有。这不可能。