MGNeo Asked:2022-01-21 19:59:58 +0800 CST2022-01-21 19:59:58 +0800 CST 2022-01-21 19:59:58 +0800 CST sizeof() 应用于 std::array 时返回什么? 772 你能告诉我Стандарт C++下面的代码是什么意思吗: std::array<char, 10> arr; memset(arr.data(), 0, sizeof(arr)); 我有一些疑问: sizeof(arr) == sizeof(char) * arr.size() c++ 1 个回答 Voted Best Answer Harry 2022-01-21T20:07:08+08:002022-01-21T20:07:08+08:00 更正确 std::array<char, 10> arr; memset(arr.data(), 0, arr.size()*sizeof(char)); 因为尽管它实际上sizeof(arr)对应于许多实现中的数组的内存大小(例如,在 VC ++ 2019 中),但据我所知,这并不能保证......但它是arr.size()直接且明确地谈到的.
更正确
因为尽管它实际上
sizeof(arr)
对应于许多实现中的数组的内存大小(例如,在 VC ++ 2019 中),但据我所知,这并不能保证......但它是arr.size()
直接且明确地谈到的.