sprintf为null char字符串时的预期行为

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sprintf为null char字符串时的预期行为相关的知识,希望对你有一定的参考价值。

在审核代码时我发现了以下代码片段。

sprintf(retValue, "%s", "");

我注意到,即使retValue为NULL,这也不会导致崩溃。我开始一个相当大的重写,如果这种设置值为空字符串的方式是预期的行为,我宁愿不改变它(虽然我的心告诉我,我应该)。

答案

sprintf为null char字符串时的预期行为

在这种情况下没有预期的行为。行为未定义。

我宁愿不改变它(尽管我的心告诉我应该)。

你应该改变它。

以上是关于sprintf为null char字符串时的预期行为的主要内容,如果未能解决你的问题,请参考以下文章

C语言 --- sprintf用法

C语言sprintf问题

sprintf

C语言sprintf怎么使用?

[转][修]sprintf()函数:将格式化的数据写入字符串

printf 字符串格式化