gpt4 book ai didi

c++ - C++ 中结构的奇怪行为[第 2 部分]

转载 作者:太空狗 更新时间:2023-10-29 19:43:57 25 4
gpt4 key购买 nike

这是 Strange behaviour of structures in C++ part 1 的延续

如果我这样做

#include<iostream>

using namespace std;

struct box
{
//int simple_int;
int arr[3];
};
int main()
{
box a={10,20,30};
//box b={100};
//cout<<b.simple_int<<"\n";
cout<<a.arr[0];
}

输出: 10 是正确的。

但是如果我删除评论。

#include<iostream>

using namespace std;

struct box
{
int simple_int;
int arr[3];
};
int main()
{
box a={10,20,30};
box b={100};
cout<<b.simple_int<<"\n";
cout<<a.arr[0];
}

输出: 100 20//而不是 100 10

为什么?

最佳答案

box a = {10, 20, 30};

将a初始化为:

a.simple_int = 10;
a.arr = {20, 30, 0};

当您输出 a.arr[0] 时,它会按预期输出 20。

关于c++ - C++ 中结构的奇怪行为[第 2 部分],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17926524/

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