122. C-printf 解析器

困难0

在 C 语言中,有一个名为 printf 的函数,它允许我们使用格式化输出打印内容。例如:

printf("The result is %d.", 42);

实现高级工具类型 ParsePrintFormat<T> 用于解析输入的字符串并提取出格式占位符(如 %d%f)。例如,如果输入字符串是 'The result is %d.',那么解析结果应该是一个元组 ['dec']

下面是占位符与对应类型的映射关系:

type ControlsMap = {
  c: 'char',   // 字符类型
  s: 'string', // 字符串类型
  d: 'dec',    // 十进制整数类型
  o: 'oct',    // 八进制类型
  h: 'hex',    // 十六进制类型
  f: 'float',  // 浮点数类型
  p: 'pointer',// 指针类型
}

例子:

type Res = ParsePrintFormat<'The result is %d and %f.'> // expected to be ['dec', 'float']
评论(0)
题库

TypeScript

加载中...