2
오류 초기화를하는 방법 :핸들을
Run-Time Check Failure #3 - The variable 'TextLabelVar' is being used without
being initialized.
예시 코드 :
HWND VarText;
char Disps[100];
float some_number;
WINAPI WndProc(..)
{
switch(...)
case WM_CREATE:
TextLabelVar=CreateWindowEx(WS_EX_WINDOWEDGE,TEXT("Edit"), TEXT("Val."), WS_CHILD \
| WS_VISIBLE, 380, 50, 140, 20, hwnd, NULL, NULL, NULL);
break;
case WM_MESSAGEFROMANOTHERWINDOW:
some_number=1298.123123;
sprintf(Disps,"%f",some_number);
SetWindowText(TextLabelVar,TEXT(Disps));
}
질문 : 좋아, 내가 오류 TextLabelVar가 초기화하지 않고 사용되는 수. var Disps에 대해 유사한 오류가 발생했습니다. 나는 char Disps [100]를 선언했다. 이것은 오류를 나타내지 않았다. 이제 오류가 핸들 위로 이동합니다. 나는 배열로서 핸들을 선언 할 수 있는지 확신 할 수 없다. 어떻게 해결할 수 있습니까?
케이스 WM_CREATE에 들어가시겠습니까? – doctorlove
"Run-Time Check Failure # 3"을 출력하는 시스템이 변수가 실제로 초기화되었지만 다른 코드 경로에 있다는 것을 알지 못하는 간단한 경우라고 생각합니다. 다른 말로하면, 다른 경우에 초기화된다는 것을 모릅니다. 선언에서'TextLabelVar'에 0을 할당하면 해결할 수 있습니다. –
@doctorlove 왜? 무슨 소리 야? 창을 만들 때 텍스트 필드를 만들고 싶습니다. 나는 메인 윈도우도 가지고있다. 그런 다음 WM_MESSAGEFROMANOTHERWINDOW가 오면 텍스트 필드를 업데이트하고 싶습니다. 어디에 배치해야합니까? – user2178841