gpt4 book ai didi

c++ - 是否自动插入空字符?

转载 作者:塔克拉玛干 更新时间:2023-11-03 08:11:01 26 4
gpt4 key购买 nike

C++ 编译器是否应该自动在 char 数组末尾插入空字符?以下打印“Word”。那么C++编译器会自动在数组的最后位置插入一个空字符吗?

int main()
{
char x[] = {'W', 'o', 'r', 'd'};
cout << x << endl;
return 0;
}

最佳答案

不,它没有。您的数组 x 只有 4 个元素。您正在向 std::cout 传递一个指向 char 的指针,它不是以 null 结尾的字符串的开头。这是未定义的行为。

例如,在我的平台上,类似的代码打印了 Word?,带有一个虚假的问号。

关于c++ - 是否自动插入空字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20644803/

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