gpt4 book ai didi

c++ - 将 size_t 转换为 int 以声明 char 数组的大小

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

我正在尝试声明一个 char 数组的大小,我需要使用声明为 size_t 的变量的值来声明该大小。无论如何我可以将 size_t 变量转换为 int 以便我可以这样做吗?

最佳答案

size_t 是一个整数类型,不需要转换。

在 C++ 中,如果您想拥有一个动态大小 数组,您需要使用new 来使用动态分配。也就是说,您不能使用:

std::size_t sz = 42;
char carray[sz];

您需要改用以下内容:

std::size_t sz = 42;
char* carray = new char[sz];
// ... and later, when you are done with the array...
delete[] carray;

或者,您最好使用 std::vector(std::vector 为您管理内存,因此您无需记住删除它明确地,您不必担心手动动态分配带来的许多所有权问题):

std::size_t sz = 42;
std::vector<char> cvector(sz);

关于c++ - 将 size_t 转换为 int 以声明 char 数组的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3040816/

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