C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[36257] Re:[질문] API코드 오류에 관해 아시는 분은 알려주세요
유영인 Cuperido [cuperido] 1032 읽음    2004-07-14 03:16
_hypot 을 hypot 으로 변경하신 뒤 실행해 보세요.
볼랜드쪽 math.h 에서 약간의 변화가 있었던것 같습니다.

cuperido


초야 님이 쓰신 글 :
: 빌더X로 했고요
: 이부분이 문제의 부분
:
:  fRadius = _hypot(cxClient / 2.0, cyClient / 2.0); //call to undefined function "_hypot"
:
: 요로콤 안돼욧 아시분은 도와주세욧
:
:
: 문제의 소스
: #include <windows.h>
: #include <math.h>
:
: #define TWO_PI (2.0 * 3.14159)
:
: LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM);
:
: int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,PSTR szCmdLine,int iCmdShow)
: {
:   static TCHAR szAppName[] = TEXT("Clover");
:   HWND hwnd;
:   MSG msg;
:   WNDCLASS wndclass;
:
:   wndclass.style = CS_HREDRAW | CS_VREDRAW;
:   wndclass.lpfnWndProc = WndProc;
:   wndclass.cbClsExtra = 0;
:   wndclass.cbWndExtra = 0;
:   wndclass.hInstance = hInstance;
:   wndclass.hIcon = LoadIcon(NULL,IDI_APPLICATION);
:   wndclass.hCursor = LoadCursor(NULL,IDC_ARROW);
:   wndclass.hbrBackground = (HBRUSH) GetStockObject (WHITE_BRUSH);
:
:   if(RegisterClass(&wndclass))
:   {
:     MessageBox(NULL,TEXT("This program required Window NT"),szAppName,MB_ICONERROR);
:     return 0;
:   }
:
:   hwnd = CreateWindow(szAppName,TEXT("Draw a Clover"),WS_OVERLAPPEDWINDOW,
:                       CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,
:                       NULL,NULL,hInstance,NULL);
:
:   ShowWindow(hwnd,iCmdShow);
:   UpdateWindow(hwnd);
:
:   if(GetMessage(&msg,NULL,0,0))
:   {
:     TranslateMessage(&msg);
:     DispatchMessage(&msg);
:   }
:   return msg.wParam;
: }
:
:
: LRESULT CALLBACK WndProc(HWND hwnd,UINT message,WPARAM wParam,LPARAM lParam)
: {
:   static HRGN hRgnClip;
:   static int cxClient,cyClient;
:   double fAngle,fRadius;
:   HCURSOR hCursor;
:   HDC hdc;
:   HRGN hRgnTemp[6];
:   int i;
:   PAINTSTRUCT ps;
:
:   switch(message)
:   {
:     case WM_SIZE:
:           cxClient = LOWORD(lParam);
:           cyClient = HIWORD(lParam);
:
:           hCursor = SetCursor(LoadCursor(NULL,IDC_WAIT));
:           ShowCursor(TRUE);
:
:           if(hRgnClip)
:               DeleteObject(hRgnClip);
:
:           hRgnTemp[0] = CreateEllipticRgn(0,cyClient / 3, cxClient / 2, 2 * cyClient / 3);
:
:           hRgnTemp[1] = CreateEllipticRgn(cxClient / 2 ,cyClient / 3,
:                                           cxClient / 2, 2 * cyClient / 3);
:           hRgnTemp[2] = CreateEllipticRgn(cxClient / 3,0, 2 * cxClient / 3,cyClient / 2);
:
:           hRgnTemp[3] = CreateEllipticRgn(cxClient / 3,cyClient / 2,
:                                           2 * cxClient / 3,cyClient / 2);
:           hRgnTemp[4] = CreateRectRgn(0,0,1,1);
:           hRgnTemp[5] = CreateRectRgn(0,0,1,1);
:           hRgnClip = CreateRectRgn(0,0,1,1);
:
:           CombineRgn(hRgnTemp[4],hRgnTemp[0],hRgnTemp[1],RGN_OR);
:           CombineRgn(hRgnTemp[5],hRgnTemp[2],hRgnTemp[3],RGN_OR);
:           CombineRgn(hRgnClip, hRgnTemp[4],hRgnTemp[5],RGN_XOR);
:
:           for(i = 0; i< 6; i++)
:               DeleteObject(hRgnTemp[i]);
:
:           SetCursor(hCursor);
:           ShowCursor(FALSE);
:           return 0;
:
:     case WM_PAINT:
:           hdc = BeginPaint(hwnd,&ps);
:           SetViewportOrgEx(hdc,cxClient / 2,cyClient / 2,NULL);
:           SelectClipRgn(hdc,hRgnClip);
:
:           fRadius = _hypot(cxClient / 2.0, cyClient / 2.0);
:
:           for(fAngle = 0.0; fAngle < TWO_PI; fAngle += TWO_PI / 360)
:           {
:             MoveToEx(hdc,0,0,NULL);
:             LineTo(hdc,(int)(fRadius * cos(fAngle) + 0.5),
:                        (int)(fRadius * sin(fAngle) + 0.5));
:           }
:           EndPaint(hwnd,&ps);
:           return 0;
:
:     case WM_DESTROY:
:           DeleteObject(hRgnClip);
:           PostQuitMessage(0);
:           return 0;
:   }
:   return DefWindowProc(hwnd,message,wParam,lParam);
: }
:
:

+ -

관련 글 리스트
36255 [질문] API코드 오류에 관해 아시는 분은 알려주세요 초야 860 2004/07/14
36257     Re:[질문] API코드 오류에 관해 아시는 분은 알려주세요 유영인 Cuperido 1032 2004/07/14
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.