while((count++<n) && *s1++=*s2++);
*s1='\0';
我运行了这段代码并得到了一个错误lvalue required as left operand of assignment in c
我能够纠正它
while((count++<n) && (*s1++=*s2++));
*s1='\0';
这很好,但我不知道为什么。我在堆栈溢出中读到其他线程说左值应该是一个可分配的值而不应该是一个常量。我无法关联它。是因为(expression)
有价值而没有价值expression
吗?我试着用
int c=3;
int b=2;
// printf("%d\n",c==b);
printf("%d\n",(c=b));
两者都给出了相同的结果 2。