【发布时间】:2015-12-30 20:43:09
【问题描述】:
我在 C++ 中,我收到此错误:
bool comprovarCodi(long long num, int DC){
bool codi_correcte;
int i=0, suma_senars=0, suma_parells=0, suma_total=0, desena_superior, DC_calculat, cont=0;
while(num!=0){
num=num/10;
cont++;
i++;
}
if(cont==12){
for(int j=1; j<12; j=j+2){
suma_senars=suma_senars+num%pow(10,j);
我不知道为什么,我相信“num”是一个整数,所以我可以使用运算符“%”。
有人知道为什么会失败吗?
谢谢
【问题讨论】:
-
pow返回double,您不能将%应用于long long和double。 -
您需要阅读整个错误信息,而不是只阅读一半。
-
(float 和 long double 也存在 pow,但是是的,没有整数返回类型)
-
问题是我需要获取 12 位数字中的每个数字。这就是我使用长长的原因。你知道另一种方法吗?
-
@user3894819 很多人已经说过了,问题不是
long long,而是double(pow)