แก้ไข: การ "ถ้า" เงื่อนไขไม่สามารถใช้งานได้อย่างถูกต้อง เมื่อคุณเรียกใช้โปรแกรมประยุกต์ c ++แสดงผลแบบที่ถูกพัฒนาใน SP1 2010 Studio ที่มองเห็น

การแปลบทความ การแปลบทความ
หมายเลขบทความ (Article ID): 2719783 - ผลิตภัณฑ์ที่เกี่ยวข้องในบทความนี้
ขยายทั้งหมด | ยุบทั้งหมด

เนื้อหาบนหน้านี้

อาการ

พิจารณาสถานการณ์สมมติต่อไปนี้:
  • คุณสามารถใช้ Microsoft Visual Studio 2010 Service Pack 1 (SP1) เมื่อต้องพัฒนาแอพลิเคชัน c ++แสดงผลที่
  • รหัสแหล่งมาของโปรแกรมประยุกต์ที่ตรงตามเงื่อนไขต่อไปนี้:
    • รหัสแหล่งมาประกอบด้วยคำสั่ง IF แบบวนซ้ำซ้อนกัน
    • ถ้าเงื่อนไขประกอบด้วยการกาเครื่องหมายที่กำหนดว่า ตัวแปรเป็นจำนวนเต็มที่เซ็นชื่อเป็นค่าลบ และนอกจากนี้เครื่องหมายที่กำหนดว่าตัวแปรเป็นจำนวนเต็มที่มีลายเซ็นมีขนาดใหญ่กว่าจำนวนอื่น
    • รหัสที่อยู่นอกเงื่อนไข IF มีฟังก์ชันเชิงเส้นที่ใช้ตัวแปรที่ได้รับการรับรอง
  • คุณคอมไพล์แอพลิเคชัน โดยใช้ 2010 Studio ที่มองเห็นหรือพรอมต์คำสั่ง

    หมายเหตุ คุณคอมไพล์แอพลิเคชันในขณะที่เปิดใช้งานตัวเลือกการคอมไพล์
  • คุณเรียกใช้แอพลิเคชัน
ในสถานการณ์สมมตินี้ คำสั่ง IF ไม่ทำงานอย่างถูกต้อง

การแก้ไข

ข้อมูลโปรแกรมแก้ไขด่วน

สามารถโหลด hotfix ได้แล้วจาก Microsoft อย่างไรก็ตาม จะมีวัตถุประสงค์เพื่อการแก้ไขปัญหาที่อธิบายไว้ในบทความนี้เท่านั้น ใช้กับระบบที่พบปัญหานี้เท่านั้น โปรแกรมแก้ไขด่วนนี้อาจได้รับการทดสอบเพิ่มเติม ดังนั้น ถ้าคุณจะไม่รุนแรงกระทบปัญหานี้ เราขอแนะนำให้ คุณรอการปรับปรุงซอฟต์แวร์ถัดไปที่ประกอบด้วยโปรแกรมแก้ไขด่วนนี้

เมื่อต้องแก้ไขปัญหานี้ทันที ติดต่อฝ่ายบริการสนับสนุนลูกค้าของ Microsoft เพื่อขอรับโปรแกรมแก้ไขด่วน สำหรับรายการทั้งหมดของหมายเลขโทรศัพท์ของบริการการสนับสนุนลูกค้าของ Microsoft และข้อมูลเกี่ยวกับค่าใช้จ่าย แวะไปที่เว็บไซต์ของ Microsoft ต่อไปนี้:
ชื่อ
หมายเหตุ ในกรณีพิเศษ ค่าธรรมเนียมที่มีค่าใช้จ่ายสำหรับการโทรศัพท์ฝ่ายสนับสนุนสามารถยกเลิกถ้า Professional สนับสนุน Microsoft กำหนดว่า การปรับปรุงเฉพาะจะแก้ปัญหาของคุณ ค่าใช้จ่ายในการสนับสนุนปกติจะคำถามเพิ่มเติมและปัญหาที่ไม่สามารถจัดเฉพาะเจาะจงในการปรับปรุง

ข้อกำหนดเบื้องต้น

เมื่อต้องใช้โปรแกรมแก้ไขด่วนนี้ คุณต้องมี Visual Studio 2010 ติดตั้ง SP1

ความต้องการเริ่มการทำงาน

คุณไม่จำเป็นต้องรีสตาร์ทคอมพิวเตอร์หลังจากที่คุณติดตั้งโปรแกรมแก้ไขด่วนถ้าไม่ได้ใช้แฟ้มได้รับผลกระทบในระหว่างกระบวนการติดตั้ง เราขอแนะนำให้ คุณปิดคอมโพเนนต์ที่เกี่ยวข้องกับ 2010 Studio แสดงผลทั้งหมดก่อนที่คุณติดตั้งโปรแกรมแก้ไขด่วน

ข้อมูลการแทนที่โปรแกรมแก้ไขด่วน

โปรแกรมแก้ไขด่วนนี้ไม่ได้แทนโปรแกรมแก้ไขด่วนอื่น ๆ

แฟ้มข้อมูล

เวอร์ชันภาษาอังกฤษของ hotfix นี้มีแอตทริบิวต์แฟ้ม (หรือแอตทริบิวต์ของแฟ้มรุ่นที่ใหม่กว่า) ซึ่งแสดงอยู่ในตารางต่อไปนี้ วันและเวลาสำหรับแฟ้มเหล่านี้จะแสดงรายการในรูปแบบเวลา (UTC) เมื่อคุณดูข้อมูลแฟ้มข้อมูล จะถูกแปลงเป็นเวลาท้องถิ่น เมื่อต้องการค้นหาความแตกต่างระหว่างเวลา UTC กับเวลาท้องถิ่น ใช้ โซนเวลา ในการ วันและเวลา รายการใน'แผงควบคุม'
สำหรับทั้งหมดได้รับการสนับสนุนรุ่น 2010 Studio แสดงผล
ยุบตารางนี้ขยายตารางนี้
ชื่อแฟ้มรุ่นของแฟ้มขนาดของแฟ้มวันเวลาแพลตฟอร์ม
C2.dll16.0.40219.4042,608,19228-มิย.-201207:24x 86
C2.dll16.0.40219.4042,494,52829-มิย.-201204:57x 86
C2.dll16.0.40219.4042,593,34429-มิย.-201204:57x 86
C2.dll16.0.40219.4042,962,49629-มิย.-201204:57x 64

สถานะ

Microsoft ยืนยันว่า ปัญหานี้มีปัญหาในผลิตภัณฑ์ของ Microsoft ซึ่งมีการระบุไว้ ในส่วน"ใช้งาน"

ข้อมูลเพิ่มเติม

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับตัวเลือกการแสดงผลของ c ++ /Oไปเว็บไซต์ MSDN ต่อไปนี้:เมื่อต้องการทบทวนเกิดปัญหานี้ เรียกใช้แอพลิเคชัน 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

คุณสมบัติ

หมายเลขบทความ (Article ID): 2719783 - รีวิวครั้งสุดท้าย: 6 กันยายน 2555 - Revision: 2.0
ใช้กับ
  • Microsoft Visual Studio 2010 Service Pack 1 เมื่อใช้กับ:
    • Microsoft Visual Studio 2010 Ultimate
    • Microsoft Visual Studio 2010 Professional
Keywords: 
kbqfe kbfix kbexpertiseadvanced kbhotfixserver kbsurveynew kbmt KB2719783 KbMtth
แปลโดยคอมพิวเตอร์
ข้อมูลสำคัญ: บทความนี้แปลโดยซอฟต์แวร์การแปลด้วยคอมพิวเตอร์ของ 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