FIX: "Ak" podmienka nefunguje správne pri spustení aplikácie Visual C++, ktorý je vyvinutý v Visual Studio 2010 SP1

Preklady článku Preklady článku
ID článku: 2719783 - Zobraziť produkty, ktorých sa tento článok týka.
Rozbaliť všetko | Zbaliť všetko

Na tejto stránke

Príznaky

Uvažujme o nasledujúcom prípade:
  • Používate Microsoft Visual Studio 2010 Service Pack 1 (SP1) rozvíjať Visual C++ aplikácie.
  • Zdrojový kód aplikácie spĺňa tieto podmienky:
    • Zdrojový kód obsahuje príkaz IF v vnorené slučky.
    • IF podmienka obsahuje šek, ktorý určuje, či premenná znamienkom je negatívny a tiež kontrolovať, ktoré určuje, či premenná znamienkom je väčšie ako iné číslo.
    • Kód, ktorý je mimo IF podmienka má lineárnu funkciu, ktorá vyu?íva podpísané premennej.
  • Kompilujete aplikácie pomocou Visual Studio 2010 alebo príkazového riadka.

    Poznámka: Kým je povolená možnosť zostaviť kompilácii aplikácie.
  • Spustení aplikácie.
V takomto prípade príkazu if nefunguje správne.

Riešenie

Informácie o rýchlej oprave

Podporovaná rýchla oprava je teraz k dispozícii od spoločnosti Microsoft. Však zamýšľa iba problém, ktorý je popísaný v tomto článku. Použite ju iba v počítačoch s týmto konkrétnym problémom. Možno, že táto rýchla oprava bude ďalej testovaná. Preto, ak ste nie sú vážne ovplyvnení tento problém, odporúčame vám počkať na nasledujúcu aktualizáciu softvéru, ktorá obsahuje túto rýchlu opravu.

Okamžite vyriešiť tento problém, obráťte sa na službu podpory zákazníkov spoločnosti Microsoft získať rýchlu opravu. Úplný zoznam telefónnych čísiel služby podpory zákazníkov spoločnosti Microsoft a informácie o poplatkoch za podporu, navštívte nasledujúce webovú lokalitu spoločnosti Microsoft:
http://support.Microsoft.com/contactus/?ws=support
Poznámka: V osobitných prípadoch, poplatky, ktoré sú telefonickú podporu hovory môže byť zrušená ak podpory určuje, že konkrétna aktualizácia vyrieši váš problém. Obvyklé podporu náklady budú vzťahovať na dodatočnú podporu otázky a otázky, ktoré nespĺňajú kritériá pre konkrétnu aktualizáciu predmetné.

Predpoklady

Ak chcete použiť túto rýchlu opravu, musíte mať Visual Studio 2010 SP1 nainštalovaný.

Požiadavka na reštart

Nemáte na reštartovanie počítača po nainštalovaní rýchlej opravy, ak postihnuté súbory sa nepoužívajú počas procesu inštalácie. Odporúčame, aby ste zatvorili všetky súvisiace s Visual Studio 2010 komponenty pred nainštalovaní rýchlej opravy.

Informácie o nahradení rýchlej opravy

Táto rýchla oprava nenahrádza Ostatné rýchlu opravu.

Informácie o súboroch

Anglická verzia tejto rýchlej opravy má atribúty súborov (alebo novšie atribúty) uvedené v nasledujúcej tabuľke. Dátumy a časy jednotlivých súborov sú uvedené v univerzálnom svetovom čase (UTC). Keď zobrazíte informácie o súbore, čas sa prevedie na miestny čas. Ak chcete vyhľadať rozdiely medzi časom UTC a miestnym časom, použite Časové pásmo kartu v Dátum a čas položka v ovládacom paneli.
Pre všetky podporované verzie Visual Studio 2010
Zbaliť túto tabuľkuRozbaliť túto tabuľku
Názov súboruVerzia súboruVeľkosť súboruDátumČasPlatforma
C2.dll16.0.40219.4042,608,19213-Dec-201207: 24x86
C2.dll16.0.40219.4042,494,52813-Dec-201204: 57x86
C2.dll16.0.40219.4042,593,34413-Dec-201204: 57x86
C2.dll16.0.40219.4042,962,49613-Dec-201204: 57x64

Stav

Microsoft potvrdila, že ide o problém produktov spoločnosti Microsoft, ktoré sú uvedené v časti "Vzťahuje sa na".

Ďalšie informácie

Ďalšie informácie o Visual C++ /O možnosti, prejsť na nasledujúce webovú lokalitu MSDN:
Všeobecné informácie o /O možnosti
Ak chcete reprodukovať tento problém, spustite C++ aplikácie, ktorá používa nasledujúci kód:
#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;
}
Po spustení aplikácie, zobrazí sa tento výsledok:
-3
-2
-1
0
1
2
3
4
5
6
7
8
Však môžete očakávať tieto výsledky v tejto situácii:
0
1
2
3
4
5
6
7
8

Vlastnosti

ID článku: 2719783 - Posledná kontrola: 8. januára 2013 - Revízia: 3.0
Informácie v tomto článku sa týkajú nasledujúcich produktov:
Kľúčové slová: 
kbqfe kbfix kbexpertiseadvanced kbhotfixserver kbsurveynew kbmt KB2719783 KbMtsk
Strojovo preložené
DÔLEŽITÉ: Tento článok bol preložený pomocou softvéru na strojový preklad od spoločnosti Microsoft, nie prekladateľom. Spoločnosť Microsoft ponúka články preložené prekladateľmi aj strojovo preložené články, vďaka čomu máte možnosť prístupu ku všetkým článkom databázy Knowledge Base vo svojom jazyku. Strojovo preložený článok však nie je vždy perfektný. Môže obsahovať chyby týkajúce sa slovnej zásoby, syntaxe alebo gramatiky, podobne ako cudzinec môže robiť chyby, keď rozpráva vašim jazykom. Spoločnosť Microsoft nenesie zodpovednosť za akékoľvek nepresnosti, chyby alebo škody spôsobené akýmkoľvek nepresným prekladom obsahu alebo jeho použitím zo strany zákazníkov. Spoločnosť Microsoft softvér na strojový preklad pravidelne aktualizuje.
Pokiaľ chcete vidieť anglickú verziu článku, kliknite sem: 2719783

Odošlite odozvu

 

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