在C/C++中,使用%(模数)可以求两个数的余数。如果你想找到一个替代方法来实现这个功能,可以使用C++中的std::div
函数或者std::lldiv
函数。这两个函数可以同时返回商和余数,从而避免了使用%运算符。
以下是使用std::div
函数的示例代码:
#include<iostream>
#include <cstdlib>
int main() {
div_t result = div(7, 3);
std::cout << "Quotient: "<< result.quot<< std::endl;
std::cout << "Remainder: "<< result.rem<< std::endl;
return 0;
}
以下是使用std::lldiv
函数的示例代码:
#include<iostream>
#include <cstdlib>
int main() {
lldiv_t result = lldiv(7LL, 3LL);
std::cout << "Quotient: "<< result.quot<< std::endl;
std::cout << "Remainder: "<< result.rem<< std::endl;
return 0;
}
这两个函数都可以返回一个包含商和余数的结构体,从而避免了使用%运算符。需要注意的是,std::div
函数只能处理整型数据,而std::lldiv
函数可以处理长整型数据。
云+社区技术沙龙[第21期]
Elastic 中国开发者大会
云+社区技术沙龙[第16期]
云+社区技术沙龙[第14期]
serverless days
技术创作101训练营
云+社区技术沙龙[第7期]
领取专属 10元无门槛券
手把手带您无忧上云