gpt4 book ai didi

c++ - 我只是幸运 malloc 返回了一个零填充的缓冲区吗?

转载 作者:搜寻专家 更新时间:2023-10-31 00:19:50 24 4
gpt4 key购买 nike

我尝试运行下面的代码:

int main(){
char *ptr = (char*)malloc(sizeof(char)*20);
ptr[5] = 'W';
ptr[0] = 'H';
std::cout<<ptr<<std::endl;
return 0;
}

当我使用 GCC 4.3.4 时,我得到“H”作为输出。 Kernighan & Ritchie 的C Programming Language 一书说 malloc() 返回未初始化的空间,在这种情况下,输出应该是一些未定义的值。我的输出只是 ptr[1] 是 '\0' 的巧合结果吗?

最佳答案

是的,这只是巧合。不要依赖它。

关于c++ - 我只是幸运 malloc 返回了一个零填充的缓冲区吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7462451/

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