发布网友 发布时间:2024-10-24 09:38
共1个回答
热心网友 时间:2024-11-09 15:51
根据优先级,'<'是6级运算符,'=='是7级运算符,而'&&'是11级运算符,所以,应该先运行"i<size",若成立则为非0,否则为0,然后这里涉及到优化问题,若"i<size"为0,则运行结束,不会运行"result==1",若"i<size"为非0,则运行result==1,然后运行&&,与之类似的'||'运算符,若左边的值为非0,则||的右边便不会被运行。例如,int i=1;i++||i++;printf("%d",i);那么输出的i为2,而不是3(因为'||'左边为非0,那么右边便不再运行),同理,int i=0;i++&&i++;printf("%d",i);那么输出的i为1,而不是2('&&'左边为0,那么右边不再运行)