我想更改传递给函数的实际参数,而不是它的副本。例如:
char str[] = "This is a string";
我想在调用后创建一个 str
值不同的函数。我尝试创建一个接受 char** 作为参数的函数,但我无法得到我想要的。
最佳答案
我认为你的意思是这样的:
void update_string(char ** ptr)
{
*ptr = strdup("This is a test");
return;
}
然后像这样调用该函数:
char * str = strdup("hello world\n");
printf("%s\n", str);
update_string(&str);
printf("%s\n", str);
关于c - 如何更改传递给 C 函数的实际参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26753776/