gpt4 book ai didi

c - C中没有固定大小的字符数组

转载 作者:太空狗 更新时间:2023-10-29 16:03:38 26 4
gpt4 key购买 nike

在C语言中如何不使用固定长度的数组来输入字符数组?我被分配到在 C 中居中字符串,并被告知不要使用固定大小的数组。

最佳答案

创建没有固定大小的数组的唯一方法是使用 malloc ,它接受您要分配的内存大小(以字节为单位)。然后,您将把它用作 char*,它也可以适应数组语法。 不要忘记测试返回值是否为非零(这是 malloc 指示内存不足的方式)。

使用完内存后,您负责使用free 将其释放回系统。

例如:

size_t size = 42; // you can read this from user input or any other source
char* str = malloc(size);

if (str == 0) {
printf( "Insufficient memory available\n" );
}
else {
// Use the memory and then...
free(str);
}

关于c - C中没有固定大小的字符数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8541213/

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