gpt4 book ai didi

无法保存 strlen 返回值

转载 作者:行者123 更新时间:2023-12-04 10:44:12 27 4
gpt4 key购买 nike

我正在使用 C 字符串库的 strlen 函数。我传递了一个 NULL字符串并找到神秘的结果。我知道我不应该传递 NULL 字符串,但我需要一个解释。代码看起来像这样

main()
{
int k;
char *s=NULL;
strlen(s);
// k = strlen(s);
}

在我的 gcc 编译器上,注释运行良好。但如果您要删除该行中的评论k=strlen(s);

它会产生段错误。有什么解释吗?

最佳答案

第一个未分配其返回值的“strlen”调用可能已被您的编译器优化。

关于无法保存 strlen 返回值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6370471/

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