FIX: "Als" voorwaarde niet goed werkt wanneer u een Visual C++-toepassing uitvoert die is ontwikkeld in Visual Studio 2010 SP1

Vertaalde artikelen Vertaalde artikelen
Artikel ID: 2719783 - Bekijk de producten waarop dit artikel van toepassing is.
Alles uitklappen | Alles samenvouwen

Op deze pagina

Symptomen

Het volgende scenario:
  • Microsoft Visual Studio 2010 Service Pack 1 (SP1) kunt u een Visual C++-toepassing ontwikkelen.
  • De broncode van de toepassing aan de volgende voorwaarden voldoet:
    • De broncode bevat een instructie in een geneste lus.
    • De IF-voorwaarde bevat een controle die bepaalt of een ondertekende integer-variabele negatief is en ook een controle die bepaalt of de ondertekende integer-variabele groter is dan een ander getal is.
    • De code die buiten de IF-voorwaarde is een lineaire functie met de variabele ondertekend.
  • U kunt de toepassing compileren met behulp van Visual Studio 2010 of vanaf de opdrachtprompt.

    Opmerking U kunt de toepassing compileren terwijl een compilatie is ingeschakeld.
  • U kunt de toepassing wordt uitgevoerd.
In dit scenario werkt de instructie niet goed.

Oplossing

Informatie over hotfixes

Een ondersteunde hotfix is nu beschikbaar bij Microsoft. Het is echter bedoeld om alleen het probleem dat wordt beschreven in dit artikel. Deze alleen van toepassing op systemen waarop dit specifieke probleem. Deze hotfix moet wellicht extra worden getest. Als u geen ernstige hinder van dit probleem ondervindt, is het daarom raadzaam te wachten op de volgende update waarin deze hotfix is opgenomen.

Om dit probleem onmiddellijk wilt verhelpen, kunt u contact opnemen met Microsoft Customer Support Services om de hotfix te verkrijgen. Een volledige lijst met telefoonnummers van Microsoft Customer Support Services en informatie over kosten van ondersteuning vindt u op de volgende Microsoft-website:
http://support.Microsoft.com/contactus/?ws=support
Opmerking In speciale gevallen kunnen worden kosten die normaal verbonden geannuleerd als een medewerker van Microsoft Productondersteuning bepaalt dat een specifieke update de oplossing van uw probleem. De normale ondersteuningskosten gelden voor extra ondersteuningsvragen die niet in aanmerking voor de specifieke update in kwestie komen.

Vereisten

Deze hotfix moet u Visual Studio 2010 SP1 is geïnstalleerd.

Opnieuw opstarten

U hoeft niet de computer opnieuw opstarten nadat u de hotfix installeren als de bestanden niet worden gebruikt tijdens de installatie. Het is raadzaam alle Visual Studio 2010 gerelateerde onderdelen te sluiten voordat u de hotfix installeert.

Vervanging van hotfixes

Deze hotfix worden geen andere hotfixes vervangen.

Informatie over

De Engelse versie van deze hotfix heeft de bestandskenmerken (of recentere bestandskenmerken) die in de volgende tabel worden weergegeven. De datums en tijden voor deze bestanden worden weergegeven in UTC (Coordinated Universal Time). Wanneer u de bestandsinformatie weergeeft, wordt deze naar lokale tijd geconverteerd. Gebruiken om het verschil tussen UTC en lokale tijd, de Tijdzone tabblad in de Datum en tijd een item in het Configuratiescherm.
Voor alle ondersteunde versies van Visual Studio 2010
Deze tabel samenvouwenDeze tabel uitklappen
BestandsnaamBestandsversieBestandsgrootteDatumTijdPlatform
C2.dll16.0.40219.4042,608,19228-Jun-201207: 24x 86
C2.dll16.0.40219.4042,494,52829-Jun-201204: 57x 86
C2.dll16.0.40219.4042,593,34429-Jun-201204: 57x 86
C2.dll16.0.40219.4042,962,49629-Jun-201204: 57x 64

Status

Microsoft heeft bevestigd dat dit een probleem is in Microsoft-producten die worden vermeld in de sectie 'Van toepassing op'.

Meer informatie

Ga naar de volgende MSDN-website voor meer informatie over Visual C++ /O opties:
Algemene informatie over /O opties
Om dit probleem te reproduceren, voert u een C++-toepassing die gebruikmaakt van de volgende code:
#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;
}
Nadat u de toepassing uitvoert, wordt het volgende resultaat:
-3
-2
-1
0
1
2
3
4
5
6
7
8
U kunt echter de volgende resultaten verwacht in deze situatie:
0
1
2
3
4
5
6
7
8

Eigenschappen

Artikel ID: 2719783 - Laatste beoordeling: donderdag 6 september 2012 - Wijziging: 2.0
De informatie in dit artikel is van toepassing op:
  • Microsoft Visual Studio 2010 Service Pack 1 op de volgende platformen
    • Microsoft Visual Studio 2010 Ultimate
    • Microsoft Visual Studio 2010 Professional
Trefwoorden: 
kbqfe kbfix kbexpertiseadvanced kbhotfixserver kbsurveynew kbmt KB2719783 KbMtnl
Automatisch vertaald artikel
BELANGRIJK: Dit artikel is vertaald door de vertaalmachine software van Microsoft in plaats van door een professionele vertaler. Microsoft biedt u professioneel vertaalde artikelen en artikelen vertaald door de vertaalmachine, zodat u toegang heeft tot al onze knowledge base artikelen in uw eigen taal. Artikelen vertaald door de vertaalmachine zijn niet altijd perfect vertaald. Deze artikelen kunnen fouten bevatten in de vocabulaire, zinsopbouw en grammatica en kunnen lijken op hoe een anderstalige de taal spreekt en schrijft. Microsoft is niet verantwoordelijk voor onnauwkeurigheden, fouten en schade ontstaan door een incorrecte vertaling van de content of het gebruik ervan door onze klanten. Microsoft past continue de kwaliteit van de vertaalmachine software aan door deze te updaten.
De Engelstalige versie van dit artikel is de volgende: 2719783

Geef ons feedback

 

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