x最后等于4。
(a=3,b=++a)整体是一个逗号
表达式,逗号表达式从左往右求值,整个表达式的值为逗号后面的表达式的值,换言之,(a=3,b=++a)的值即表达式(b=++a)的值,而(b=++a)是一个赋值表达式,其值为赋值后的左操作数(此处即b)。
模拟逗号表达式的求值过程,先求值表达式(a=3),将3赋值给a;然后求值表达式(b=++a),将a递增并将递增后(因为是前置++,所以递增后再赋值)的值(此处即4)赋值给b。
最后执行x=(a=3,b=++a),因为(a=3,b=++a)的值是b,此处相当于将b赋值给x。通过先前的分析知道b此时的值为4,因此x最后也等于4。