FIX: "IF" 조건을 제대로 작동 하지 않는 Visual C++ 응용 프로그램을 실행할 때 Visual Studio 2010 s p 1 개발

기술 자료 번역 기술 자료 번역
기술 자료: 2719783
모두 확대 | 모두 축소

이 페이지에서

현상

다음 시나리오를 고려 하십시오.
  • Microsoft Visual Studio 2010 서비스 팩 1 (SP1)을 사용 하 여 Visual C++ 응용 프로그램을 개발 합니다.
  • 응용 프로그램의 소스 코드는 다음 조건에 맞는:
    • IF 문에서 중첩 된 루프의 소스 코드를 포함합니다.
    • IF 조건을 부호 있는 정수 변수를 음수 인지 여부를 확인 하는 검사와 부호 있는 정수 변수를 다른 번호 보다 큰 있는지 여부를 확인 하는 검사를 포함 합니다.
    • IF 조건을 외부 코드 서명 된 변수를 사용 하는 선형 함수를 있습니다.
  • 명령 프롬프트 또는 Visual Studio 2010을 사용 하 여 응용 프로그램을 컴파일합니다.

    참고 컴파일 옵션을 사용 하는 동안 응용 프로그램을 컴파일합니다.
  • 응용 프로그램을 실행 합니다.
이 시나리오에서는 IF 문이 제대로 작동 하지 않습니다.

해결 방법

핫픽스 정보

지원 되는 핫픽스를 이제 Microsoft에서 사용할 수 있습니다. 그러나이 문서에서 설명 하는 문제를 해결 하는 것이 아닙니다. 이러한 특정 문제가 발생 하는 시스템에만 적용 됩니다. 이 핫픽스는 나중에 추가 테스트를 나타날 수 있습니다. 따라서이 문제의 영향이 심각 하지 않으면이 핫픽스가 포함 된 다음 소프트웨어 업데이트가 때까지 기다리는 것이 좋습니다.

이 문제를 즉시 해결 하려면 핫픽스를 구하려면 Microsoft 고객 지원 서비스에 문의 하십시오. Microsoft 고객 기술 지원부 전화 번호 및 지원 비용에 대 한 정보에 대 한 전체 목록을 보려면 다음 Microsoft 웹 사이트를 방문 하십시오.
http://support.microsoft.com/contactus/?ws=support
참고 Microsoft 기술 지원 전문가가 특정 업데이트로 문제를 해결할 수 있는지 결정 하는 경우 특수 한 경우에 일반적으로 지원 호출에 발생 하는 비용이 취소 될 수도 있습니다. 추가 지원 질문과 특정 업데이트가 문제의 한정 하지 않는 문제에는 일반 지원 비용이 적용 됩니다.

필수 구성 요소

이 핫픽스를 적용 하려면 Visual Studio 2010 SP1 설치 되어 있어야 합니다.

다시 시작 요구사항

설치 하는 동안 영향을 받는 파일을 사용 하는 경우 핫픽스를 설치한 후 컴퓨터를 다시 시작할 필요가 없습니다. 핫픽스를 설치 하기 전에 모든 Visual Studio 2010에 관련 된 구성 요소를 닫는 것이 좋습니다.

핫픽스 대체 정보

이 핫픽스는 다른 핫픽스를 대체 하지 않습니다.

파일 정보

파일 특성 (또는 그 이후의 파일 특성)이 핫픽스의 영어 버전은 있는 다음 표에 나열 된. 이러한 파일의 시간과 날짜 협정 세계시 (UTC)에 나열 됩니다. 파일 정보를 볼 때 로컬 시간으로 변환 합니다. UTC와 로컬 시간의 차이 확인 하려면 사용 하는 표준 시간대 탭에 날짜 및 시간 제어판에서 항목입니다.
지원 대상인 모든 버전의 Visual Studio 2010
표 축소표 확대
파일 이름파일 버전파일 크기날짜플랫폼
C2.dll가16.0.40219.4042,608,19213-Dec-2012x 86
C2.dll가16.0.40219.4042,494,52813-Dec-2012x 86
C2.dll가16.0.40219.4042,593,34413-Dec-2012x 86
C2.dll가16.0.40219.4042,962,49613-Dec-2012x 64

현재 상태

Microsoft 나열 된 제품에서 문제가 있음을 확인 했습니다. "적용 대상" 절에 있습니다.

추가 정보

Visual C++ /O 옵션에 대 한 자세한 내용은 다음 MSDN 웹 사이트를 방문 하십시오.
/O 옵션에 대 한 일반 정보
이 문제를 재현 하려면 다음 코드를 사용 하는 c + + 응용 프로그램을 실행 합니다.
#include "stdafx.h"
 
int main()
{
        for( int i = -1; i <= 3; i++ ) 
        {
               for( int j = -1; j <= 3; j++ ) 
               {
                      if (i >= 0 && i < 3 && j >= 0 && j < 3)
                      {
                            printf("%d\n", i * 3 + j);
                      }
               }
        }
        return 0;
}
응용 프로그램을 실행 한 후 다음과 같은 결과가 나타납니다.
-3
-2
-1
0
1
2
3
4
5
6
7
8
그러나이 상황에서 다음 결과 얻게 합니다.
0
1
2
3
4
5
6
7
8

속성

기술 자료: 2719783 - 마지막 검토: 2013년 1월 10일 목요일 - 수정: 4.0
키워드:?
kbqfe kbfix kbexpertiseadvanced kbhotfixserver kbsurveynew kbmt KB2719783 KbMtko
기계 번역된 문서
중요: 본 문서는 전문 번역가가 번역한 것이 아니라 Microsoft 기계 번역 소프트웨어로 번역한 것입니다. Microsoft는 번역가가 번역한 문서 및 기계 번역된 문서를 모두 제공하므로 Microsoft 기술 자료에 있는 모든 문서를 한글로 접할 수 있습니다. 그러나 기계 번역 문서가 항상 완벽한 것은 아닙니다. 따라서 기계 번역 문서에는 마치 외국인이 한국어로 말할 때 실수를 하는 것처럼 어휘, 구문 또는 문법에 오류가 있을 수 있습니다. Microsoft는 내용상의 오역 또는 Microsoft 고객이 이러한 오역을 사용함으로써 발생하는 부 정확성, 오류 또는 손해에 대해 책임을 지지 않습니다. Microsoft는 이러한 문제를 해결하기 위해 기계 번역 소프트웨어를 자주 업데이트하고 있습니다.
이 문서의 영문 버전 보기:2719783

피드백 보내기

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com