C语言:我想问问,子函数f里的a=c++,b++是怎么执行的?不是赋值高于逗号表达式么?,先做a=

2025年03月13日 05:29
有3个网友回答
网友(1):

首先要搞清楚优先级的问题,在此条语句中a=c++,b++;中单目的优先级最高,也就是++得优先级最高,所以先算c++,其次是赋值优先级高,把c++之后的值给了a;最后是逗号运算符,最低再算b;也就可以写成(a=c++),b++;算完括号里边的,再算括号外边的,相当于两个式子,最后它要返回a的值,和b没关系

网友(2):

/**
* 将所有的数字都替换成'#'
*/
@Test
public void testReplace() {
String input = "1j2h3h4g5o";
Matcher replace = Pattern.compile("[0-9]").matcher(input);
input = replace.replaceAll("#");
System.out.println(input);
}

网友(3):

a=c;
c=c+1;
b=b+1;