2012-09-20 3 views
4

안녕하세요 저는 C++을 처음 사용합니다. 그래서 이것이 정말 어리석은 질문인지 잘 모르겠습니다. 기본적으로 C++ 사용자 지정 작업 프로젝트를 사용하여 MSI 설치 관리자와 상호 작용합니다. 내 사용자가 입력 할 속성을 얻습니다. 정수입니다. 나는 이것이 8의 배수인지 확인해야하고 이것에 대해 어떻게해야할지 모르겠다. 분명히 8로 나눌 수 있다면 그것은 배수이지만 나머지가 있다면 어떻게 잡을 지 잘 모르겠습니다. 어떤 도움을 주셔서 감사하거나 심지어 올바른 방향으로 나를 가리킨다. 감사합니다정수가 8의 배수인지 확인하십시오.

+0

% 연산자 만 사용하면됩니다. bool isMultipleOf8 = (값 % 8) == 0; –

+0

이것이 0이 아니면 8의 배수가 아닌 모듈로 연산자 ('%')가 필요합니다. – Nim

+0

'num % 8 == 0' 시도 –

답변

16

부문 나머지주는 "모듈"연산자, 사용

if (n % 8 == 0) { 
    // n is a multiple of 8 
} 
5

사용 "모듈"또는 "정수 나머지 연산자"% :

int a = ....; 
if (a % 8 == 0) { 
    // a is amultiple of 8 
} 
3

사용 연산자 %를

if (num % 8 == 0) 
{ 
    // num is multple of 8 
} 
0

누군가가 비트 작동을 사용하고있는 것을 보았습니다.

bool f(int x){ 
return !(x & 7); 
} 

이 접근법에는 약간의 문제가 있지만 나는 확실하지 않습니다.