为什么char
在乘以整数字面时溢出而unsigned char
没有,并且它会转换为int
或unsigned int
?
#include <memory>
#include <iostream>
using namespace std;
int main(void)
{
char MAX1=200;
unsigned char MAX2=200;
cout << MAX1*3 << endl;
cout << MAX2*3 << endl;
return 0;
}
以上代码输出:
-168
600
答案 0 :(得分:0)
哦,是的!我现在清楚地看到了。两者都投放到BooleanTemplate predicate = Expressions
.booleanTemplate("FUNCTION('ftsMatch', {0},'pg_catalog.french', film.titre) = true ", _titre);
Page<Film> page = filmRepository.findAll(predicate, _pageable);
,只是int
溢出,然后投放到MAX1
,然后成倍增加。感谢@BaummitAugen