当传递空格作为参数时,可以使用' '
传递空格吗?
我目前正在重新创建printf
。
下面的代码是我要传递的内容的示例。
以这种方式传递时,效果很好:
ft_printf("Start %-+# 0400.500hhiend\n");
这导致人们相信不能像' '
这样的参数来传递空间,但是我只想仔细检查一下。
传入:
ft_printf("Start %-+#' '0400.500hhiend\n");
解析代码:
while (fmt[count] == '-' || fmt[count] == '+' || fmt[count] == ' ' ||
fmt[count] == '#' || fmt[count] == '0')
答案 0 :(得分:0)
不,不能。 Printf通过分析百分号与最终和不可避免的类型转换(即“ diouxXcspf”)之间的含义来解析字符串。
我想您总是可以以一种更有效的方式解析字符串,方法是使用一系列代表不同标志的符号(使用基本词法分析器生成),并根据它们的含义调用不同的函数,这将避免“将空格作为参数传递”。