인 경우 어떻게됩니까? Visual Studio에서 C 코드 다음에 컴파일하면 결과는 4입니다.정수보다 비트 단위로 시프트 한 비트가
void main() { int c = 1; c = c<<34;}
Visual Studio를 분해 창에서 본 어셈블리 코드는
어셈블리에서shl eax,22h
, 그 정수가 여기에 4 바이트이기 때문에 우리가 결과에서, (34)를 이동하는 것을 쉽게 볼 수 이 작업을 2로 시프트 할 때 모듈로 작업을 수행하는 것이 명백합니다.
이 동작이 플랫폼간에 표준화되었거나 플랫폼에 따라 다르면 궁금합니다.
메인을'void main() {...} '이라고 선언하면 어떻게 될까요? – wildplasser
어떤 아키텍처에서 프로그램을 실행하고 있습니까? i386? –
은 x86-64이지만 내 창은 32 비트입니다. –