2014-12-29 43 views
0


我寫了一個程序,它用C++顯示一個白色窗口。
此外,我正在窗口中顯示一個文本。爲了達到這個目的,
我使用TextOut()函數。它的工作,
但除了所顯示的句子,顯示如下:TextOut() - 「無效空指針」

invalid null pointer (__onexitbegin != NULL && __onexitend != NULL)||(__onexitbegin == NULL && __onexitend == NULL) 

此錯誤後有很多中國的跡象。
我在互聯網上研究,但沒有發現任何有用的東西。

這是我用來顯示文本代碼:

const wchar_t* string = L"This is a test."; 
hdc = BeginPaint(hwnd, &ps); 
TextOut(hdc, 0, 0, string, 500); //the length is just for test purpose 
EndPaint(hwnd, &ps); 

謝謝您的建議。

回答

0

您正在告訴TextOut,如果字符串的長度實際上只有15個字符,則其長度爲500個字符。由於TextOut不會停在空終止符處,因此它將繪製您告訴它的確切數量的字符。您看到的額外文本,垃圾和中文字符是之後存儲的其他數據字符串文字"This is a test."