C语言中Java和Python的Format属性
在Python中,我们可以这样使用format属性:C语言中Java和Python的Format属性,java,python,c,Java,Python,C,在Python中,我们可以这样使用format属性: "Today is {}/{}/{}".format(self.day, self.month, self.year) 在Java中,我们也可以这样做: MessageFormat.format("Today is {0}/{1}/{2}", this.day, this.month, this.year); C中是否有等效的格式属性?除了%d和%s之外,Python中还有格式属性。后者有一个优点,因为它不需要指定变量的类型,无论是数
"Today is {}/{}/{}".format(self.day, self.month, self.year)
在Java中,我们也可以这样做:
MessageFormat.format("Today is {0}/{1}/{2}", this.day, this.month, this.year);
C中是否有等效的格式属性?除了%d和%s之外,Python中还有格式属性。后者有一个优点,因为它不需要指定变量的类型,无论是数字、字符串还是其他什么 这不能用C语言来完成。至少不干净 Java和Python都有强大的类型。这意味着对象具有无法更改的内在类型,并且在程序执行期间,该类型是已知的。您可以将任何对象适当地转换为字符串,因为它们的类型是已知的,并且它们实现了
toString()
/\uuu str\uuu()
方法
C、 相比之下,他的打字能力较弱。C中的类型更多的是对内存地址上的数据的解释。你可以将任何东西转换成任何其他东西。sprintf()
函数无法知道什么是什么
< >在C++中有一些用通用语法构建字符串的方法,如果你感兴趣的话。我不认为是因为在C.中不能从可变长度参数中检索类型信息,C中有一个等价的格式属性吗?对除了
%d
和%s
之外,我不这么认为。您可以(也许)通过预处理步骤编写这样的功能。我尝试了一些不需要显式指定变量类型的功能,非常感谢。