无符号整数变量大时通过减法越界的错误的无问题符号(unsigned )和有符号)这两种(float和double始终带符号),除char以外的数据如果非char数据类型需要声明无符号类型,则必须在类型前加unsigned。
两个无符号整数变量,例如std:uint64_t x1、x2; 比较尺寸时,请使用if(x1x2)方式,不要使用if(x1x2 )。 因为在无符号整形变量中,两者的减法不会为负。
仅直接减去符号变量,比较两者的差。
如果使用无符号整数变量,请限定条件if(x1x2),然后使用减法增量=x1-x2。
std:uint64_t delta; if(x1x2)增量=x1-x2; (else )三角洲=x2-x1; //三角洲=x1x2? (x1-x2 ) : ) x1-x2 ); //直接一句话,代替上面的if-elseSTD33603360max(a,b ),可以比较两者哪个更大,并返回更大的值。 STD:3360min ) a,b )比较哪个较小,并返回较小的值。