gpt4 book ai didi

c++ - 向 snprintf 提供空指针时的预期行为

转载 作者:太空狗 更新时间:2023-10-29 19:53:37 27 4
gpt4 key购买 nike

此代码段的预期行为是什么?

char * aNullPointer = 0;
snprintf (res, 128, "Testing %s null pointer",aNullPointer);

请注意,我故意试图让它取消引用我的空指针 aNullPointer

行为1)res指向一个字符串“Testing (null) null pointer”

行为 2) 段错误

我的行为似乎因我的平台而异。一些 snprintf 实现执行健全性检查,而其他的则不执行。

最常见的行为是什么?

最佳答案

这是未定义的行为 - 没有什么可期待的。事实上,某些实现会检查 NULL 并将其替换为“nil”或“null”,这只是一种巧妙的做法,您根本不能依赖它。

关于c++ - 向 snprintf 提供空指针时的预期行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12316768/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com