c++ - 实际参数列表中的赋值运算符

标签 c++ parameter-passing

int main ()
{
char* a[5] = {0}
char* b = //char type address here.;
char c[] = "copy";
strcpy(a[1] = b, c);
}

strcpy(a[1] = b如何计算?a[1]是否被发送到函数?

我无法测试这个 atm,我在用手机。

最佳答案

计算表达式 a[1] = b,然后将结果 作为参数传递。结果既不是 a[1] 也不是 b,但两者都相等。

你可以这样想

char *compiler_generated_temp_variable = a[1] = b;
strcpy(compiler_generated_temp_variable, c);

关于c++ - 实际参数列表中的赋值运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29429933/

相关文章:

c++ - 有人可以帮助我解决求和为k的数组元素对索引的问题吗?

function - 将函数作为参数传递的优点

kendo-ui - 如何将参数传递给剑道网格列模板中的 javascript?

java - Android:将变量传递给非 Activity 类

c++ - 如何将模板参数传递给 CRTP?

c++ - 系统与 ShellExecute - 差异?

c - 将值存储到结构数组值 C

java - 将 int[][] 作为通用参数传递

c++ - std::count 错误

c++ - 如何编写函数和成员函数的包装器,在包装函数之前和之后执行一些代码?