我有这个问题,我有一个字符串,我将它作为字符指针传递给函数。
void test(char * str) {
....
}
其中str =“abc”。现在我想在这个字符串的末尾添加一些额外的字符而不创建新字符串。我不想使用 strcat,因为我不知道要在字符串末尾添加多少个字符以及要添加什么。我试图使用 realloc 但它不起作用,因为 str 是在堆栈上分配的。
有什么办法可以动态增加 char 数组的大小?
更新:我被问到一个在我的采访中涉及到的问题。我被要求在不使用额外空间的情况下这样做。因此,如果我使用 malloc 分配内存,我在技术上是在使用额外的空间,对吗?
谢谢