我刚刚遇到了基本上执行以下操作的代码:
int a = (1, 2, 3);
Run Code Online (Sandbox Code Playgroud)
我以前从未见过这种表示法.这是什么意思?
int i=1,2,3;
int i=(1,2,3);
int i; i=1,2,3;
这些陈述有什么区别?我无法理解它.
我以为我理解C语言中的赋值操作,但我正在尝试学习一些图形编程,并且我遇到了这个初始化语句让我感到困惑:
/* request auto detection */
int gdriver = DETECT, gmode, errorcode
Run Code Online (Sandbox Code Playgroud)
我使用元素编译了一个小的工作程序,结果似乎是赋值和声明的组合.RHS上的第一个变量分配给LHS变量,其余变量被声明(但未初始化)为LHS变量的类型......
#include <stdio.h>
int main(){
int a = 0; // Comment out this line and things break
int d = a, b, c;
printf("%d %d %d %d", a, b, c, d);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
为什么你会使用这样的一行似乎一起执行两个不相关的行为?