¿øÇü |
int wsprintf(LPTSTR lpOut, LPCTSTR lpFmt, ...); | ||||||||||||||||||||||||||||||||||||||||
MFC ¿øÇü |
void CString::Format( LPCTSTR lpszFormat, ... ); | ||||||||||||||||||||||||||||||||||||||||
Àμö |
¢ºlpOut : ¼½ÄÈµÈ Ãâ·ÂÀ» ³»º¸³¾ ¹®ÀÚ¿ ¹öÆÛ. ÃÖ´ë ±æÀÌ´Â 1024¹ÙÀÌÆ®ÀÌ´Ù. ¢ºlpFmt : ¼½Ä ¹®ÀÚ¿À̸ç ÀÏ¹Ý ¹®ÀÚ¿ »çÀÌ¿¡ %·Î ½ÃÀ۵Ǵ ¼½ÄÀ» Æ÷ÇÔÇÒ ¼ö ÀÖ´Ù. ¢º... : ¼½Ä ¹®ÀÚ¿³»ÀÇ ¼½Ä°ú ´ëÀÀµÉ º¯¼öµé. ¼½ÄÀÇ °³¼ö¸¸Å º¯¼ö¸¦ Á¦°øÇØ¾ß ÇÑ´Ù. | ||||||||||||||||||||||||||||||||||||||||
¸®ÅÏ |
¼º°øÇÒ °æ¿ì ¹öÆÛ·Î º¹»çµÈ ¹®ÀÚ °³¼ö¸¦ ¸®ÅÏÇØÁÖµÇ ³Î Á¾·á ¹®ÀÚ´Â °³¼ö¿¡¼ Á¦¿ÜµÈ´Ù. ½ÇÆÐÇÒ °æ¿ì ¿¹»óµÈ Ãâ·Âº¸´Ù ´õ ÀÛÀº ¹®ÀÚ¼ö°¡ ¸®ÅϵǸç ÀÌ °æ¿ì ½ÇÆÐ ¿øÀÎÀº GetLastError·Î Á¶»çÇÒ ¼ö ÀÖ´Ù. | ||||||||||||||||||||||||||||||||||||||||
¼³¸í |
¼½ÄÈµÈ Ãâ·ÂÀ» ¹®ÀÚ¿ ¹öÆÛ·Î º¸³½´Ù. µµ½ºÀÇ printf¿¡ ´ëÀÀµÇ´Â API ÇÔ¼öÀ̸ç Ãâ·ÂÇÒ ¼½Ä ¹®ÀÚ¿À» Á¶¸³ÇÏ´Â °¡Àå ÀϹÝÀûÀÎ ¹æ¹ýÀ» Á¦°øÇÑ´Ù. lpOut´Â ¼½ÄÀ» Á¶¸³ÇÑ °á°ú¸¦ ÀԷ¹ÞÀ» ¹öÆÛÀÌµÇ ÃÖ´ë 1024±æÀÌÀÇ ¹®ÀÚ¿À» Á¶¸³ÇÒ ¼ö ÀÖÀ¸¸ç ÃæºÐÇÑ ±æÀÌÀÇ ¹öÆÛ¸¦ Á¦°øÇØ¾ß ÇÑ´Ù. lpFmt´Â Ãâ·Â¿¡ »ç¿ëµÉ ¹®ÀÚ¿ÀÌµÇ ÀÌ ¹®ÀÚ¿¿¡´Â ¼½ÄÀÌ Æ÷Ç﵃ ¼ö ÀÖ´Ù. ¼½ÄÀº ÀϹÝÀûÀ¸·Î ´ÙÀ½°ú °°Àº Çü½ÄÀ» °¡Áø´Ù. %[-][#][0][w][.p]ŸÀÔ []°ýÈ£¾È¿¡ ÀÖ´Â ¿É¼ÇÀº ÇÊ¿äÇÒ °æ¿ì¸¸ ÁöÁ¤Çϸç %¿Í ŸÀÔÀº ¹Ýµå½Ã Àû¾îÁÖ¾î¾ß ÇÑ´Ù. »ç¿ëÇÒ ¼ö Àִ ŸÀÔÀº ´ÙÀ½°ú °°´Ù.
wsprintf´Â À¯´ÏÄڵ带 Áö¿øÇϸç UNICODE ¸ÅÅ©·ÎÀÇ Á¤ÀÇ ¿©ºÎ¿¡ µû¶ó ¼½Ä°ú ´ëÀÀµÇ´Â º¯¼öÀÇ Æ÷¸ËÀÌ ´Þ¶óÁú ¼ö ÀÖ´Ù. lpFmt Àμö ´ÙÀ½¿¡´Â ¼½Ä¿¡ ´ëÀÀµÇ´Â º¯¼ö°¡ ¿À¸ç ÀÌ º¯¼öµéÀº lpFmt¿¡¼ ³ªÅ¸³ª´Â ¼½Ä°ú ¼ø¼´ë·Î ÀÏ´ëÀÏ ´ëÀÀµÈ´Ù. ¿¹¸¦ µé¾î ´ÙÀ½°ú °°ÀÌ ÀÌ ÇÔ¼ö¸¦ È£ÃâÇß´Ù°í ÇÏÀÚ. wsprintf(lpOut, "¼±ÅÃÇϽŠ°ª %d´Â %d¹ø°ÀÇ %s¼³Á¤À» º¯°æÇÕ´Ï´Ù.",iValue, iOrder, szConf); ù¹ø° %d´Â ¼¼¹ø° º¯¼ö iValue¸¦ ¹ÞÀ¸¸ç µÎ¹ø° %d´Â ´Ù¼¸¹ø° º¯¼ö iOrder°ªÀ» ¹ÞÀ¸¸ç %s´Â ¸¶Áö¸· Àμö szConf¸¦ ¹Þ´Â´Ù. ¼½Ä ¹®ÀÚ¿¿¡ ³ªÅ¸³ª´Â ¼½ÄÀÇ °³¼ö¿Í ȣȯµÇ´Â ŸÀÔÀÇ º¯¼ö°¡ ¹Ýµå½Ã Á¦°øµÇ¾î¾ß ÇÑ´Ù. ´ÙÀ½ ¿¹Á¦´Â ±âº»ÀûÀΠŸÀÔ¿¡ ´ëÇØ ¼½Ä ¹®ÀÚ¿À» Á¶¸³ÇÏ¿© Ãâ·ÂÇØ º» °ÍÀÌ´Ù. LRESULT CALLBACK WndProc(HWND hWnd,UINT iMessage,WPARAM wParam,LPARAM lParam) { HDC hdc; PAINTSTRUCT ps; TCHAR lpOut[1024]; switch(iMessage) { case WM_PAINT: hdc=BeginPaint(hWnd, &ps); wsprintf(lpOut,TEXT("Á¤¼ö=%d, ºÎÈ£¾ø´Â Á¤¼ö=%u"),1234567890,3234567890); TextOut(hdc,10,10,lpOut,lstrlen(lpOut)); wsprintf(lpOut,TEXT("16Áø¼ö=%x, 16Áø¼ö=%X"),0xabcd,0xabcd); TextOut(hdc,10,30,lpOut,lstrlen(lpOut)); wsprintf(lpOut,TEXT("¹®ÀÚ=%c, ¹®ÀÚ=%C"),'S',L'ÇÑ'); TextOut(hdc,10,50,lpOut,lstrlen(lpOut)); wsprintf(lpOut,TEXT("¹®ÀÚ¿=%s, ¹®ÀÚ¿=%S"),"´ëÇѹα¹",L"¿ì¸®³ª¶ó"); TextOut(hdc,10,70,lpOut,lstrlen(lpOut)); EndPaint(hWnd, &ps); return 0; case WM_DESTROY: PostQuitMessage(0); return 0; } return(DefWindowProc(hWnd,iMessage,wParam,lParam)); } Á¤¼öÇü°ú 16Áø Á¤¼ö, ¹®ÀÚ, ¹®ÀÚ¿¿¡ ´ëÇØ ¼½ÄÀ» Àû¿ëÇØ º¸¾Ò´Ù. wsprintf´Â À¯´ÏÄڵ带 Áö¿øÇϹǷΠ¼½Ä¹®ÀÚ¿À» ÀÛ¼ºÇÒ ¶§µµ TEXT ¸ÅÅ©·Î¸¦ »ç¿ëÇÏ´Â °ÍÀÌ ÁÁ´Ù. ±âº»ÀûÀÎ ¼½Ä¿Ü¿¡µµ %¿Í ŸÀÔ »çÀÌ¿¡ ´ÙÀ½°ú °°Àº ¿É¼ÇÀ» ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. ¿É¼Ç¿¡ µû¶ó º¯¼ö Ãâ·Â ÀÚ¸®¼ö¿Í Á¤·Ä ¹æ½Ä, ¼±Çà Á¦·Î ó¸® ¹æ½Ä¿¡ º¯È¸¦ ÁÙ ¼ö ÀÖ´Ù. ¾Æ·¡ µµÇ¥¿¡¼ E´Â °ø¹éÀ» ÀǹÌÇÑ´Ù.
´ÙÀ½ ¿¹Á¦´Â ¼½Ä¿¡ ¿É¼ÇÀ» Àû¿ëÇÏ¿© ´Ù¾çÇÑ ÇüÅ·ΠÃâ·ÂÇØ º» °ÍÀÌ´Ù. LRESULT CALLBACK WndProc(HWND hWnd,UINT iMessage,WPARAM wParam,LPARAM lParam) { HDC hdc; PAINTSTRUCT ps; TCHAR lpOut[1024]; int i; switch(iMessage) { case WM_PAINT: hdc=BeginPaint(hWnd, &ps); i=1234; wsprintf(lpOut,TEXT("Á¤¼ö1=%d, Á¤¼ö2=%8d, Á¤¼ö3=%-8d, Á¤¼ö4=%08d"),i,i,i,i); TextOut(hdc,10,10,lpOut,lstrlen(lpOut)); wsprintf(lpOut,TEXT("Á¤¼ö5=%.8d"),i); TextOut(hdc,10,30,lpOut,lstrlen(lpOut)); wsprintf(lpOut,TEXT("16Áø¼ö1=%x, 16Áø¼ö2=%#x"),0xab,0xab); TextOut(hdc,10,50,lpOut,lstrlen(lpOut)); EndPaint(hWnd, &ps); return 0; case WM_DESTROY: PostQuitMessage(0); return 0; } return(DefWindowProc(hWnd,iMessage,wParam,lParam)); } %d´Â ´Ü¼øÈ÷ Á¤¼öÇü º¯¼ö¸¦ ¹ÞÀ¸¹Ç·Î Á¤¼ö°ª 1234ÀÇ ÀÚ¸®¼ö¿¡ ¸Â°Ô¸¸ Ãâ·ÂÇÑ´Ù. %8d´Â Á¤¼ö°ªÀ» Ãâ·ÂÇ쵂 ÃÖ¼Ò 8ÀÚ¸®¸¦ ¹Ýµå½Ã Â÷ÁöÇϵµ·Ï ÇØ ÁÖ¸ç ÀÌ ¶§ ³²´Â ÀÚ¸®¼ö´Â °ø¹éÀ¸·Î ³²°ÜÁø´Ù. %-8d´Â °ø¹éÀ» ¿À¸¥ÂÊÀ¸·Î º¸³» ¿ÞÂÊÀ¸·Î Á¤·ÄµÇµµ·Ï ÇØ ÁØ´Ù. %08d¿Í %.8d´Â 8ÀÚ¸®·Î Á¤¼ö°ªÀ» Ãâ·ÂÇ쵂 ³²´Â ÀÚ¸®´Â ¼±Çà Á¦·Î·Î ä¿ìµµ·Ï ÇÑ´Ù. ´ÙÀ½Àº ÀÌ ÇÔ¼öÀÇ ¸î°¡Áö °£´ÜÇÑ È°¿ë¿¹ÀÌ´Ù. 1.¿¡·¯ ¸Þ½ÃÁö¸¦ Á¶¸³ÇÒ ¶§ »ç¿ëÇÑ´Ù. wsprintf(sError, "¼±ÅÃÇϽŠ%s ¿É¼ÇÀº Áö±Ý »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù",szOption); 2.SQL Äõ¸®¹®À» Á¶¸³ÇÑ´Ù. wsprintf(szSQL, "select * from tblSample where age > %d and height < %d",iAge,iHeight); 3.µð¹ö±ëÀ» À§ÇØ º¯¼ö°ªÀ» ¸Þ½ÃÁö ¹Ú½º·Î È®ÀÎÇÑ´Ù. wsprintf(szMessage,"x=%d, y=%d, sOrder=%s",x,y,sOrder); 4.ŸÀÌƲ ¹Ù¿¡ Ãâ·ÂÇÒ ¹®ÀÚ¿À» Á¶¸³ÇÑ´Ù. wsprintf(sCaption,"MyProgram - %s",sDocument); ÀÌ ÇÔ¼ö´Â ±²ÀåÈ÷ »ç¿ëÇϱ⠽±°í À¯¿ëÇÏ´Ù. ¹°·Ð printfµµ ¸ð¸£´Â »ç¶÷¿¡°Ô´Â ´Ù¼Ò ¾î·Á¿ï ¼öµµ ÀÖÀ¸³ª ¼½Ä Ãâ·ÂÀº C¾ð¾îÀÇ Ç¥ÁØÈµÈ ±â´ÉÀ̹ǷΠ´ëºÎºÐÀÇ »ç¶÷ÀÌ Àͼ÷ÇÏ°Ô »ç¿ëÇÒ ¼ö ÀÖ´Ù. ±×·¯³ª ÀÌ ÇÔ¼ö´Â ¶ÇÇÑ ¸î°¡Áö ÁÖÀÇ »çÇ×À» ÁöÅ°Áö ¾ÊÀ¸¸é ¿¡·¯¸¦ ¹ß»ýÇÒ °¡´É¼ºÀÌ ¾ÆÁÖ ¸¹À¸¹Ç·Î ÁÖÀÇÇØ¾ß ÇÑ´Ù. ´ÙÀ½Àº ÀÌ ÇÔ¼ö¸¦ »ç¿ëÇÒ ¶§ ÁÖÀÇÇؾßÇÒ ÀϹÝÀûÀÎ »çÇ×ÀÌ´Ù. 1.¼½Ä ¹®ÀÚ¿ ³»ÀÇ ¼½Ä°ú º¯¼öÀÇ °³¼ö´Â ÀÏÄ¡ÇØ¾ß ÇÑ´Ù. ¸¸¾à ¼½ÄÀÇ °³¼öº¸´Ù ´õ ¸¹Àº º¯¼ö°¡ Á¦°øµÉ °æ¿ì ³²´Â º¯¼ö´Â ¹«½ÃµÇ¹Ç·Î Å©°Ô ¹®Á¦°¡ µÇÁö ¾ÊÁö¸¸ ¹Ý´ëÀÇ °æ¿ì, Áï ¼½Äº¸´Ù º¯¼ö°¡ ´õ ÀÛÀ» °æ¿ì´Â °á°ú¸¦ ¿¹ÃøÇÒ ¼ö ¾øÀ¸¸ç Ä¡¸íÀûÀÎ ¿¡·¯ÀÇ ¿øÀÎÀÌ µÈ´Ù. ´ÙÀ½ Äڵ带 º¸ÀÚ. wsprintf(lpOut,"%sÀÇ °á°ú´Â %d,%dÀÌ´Ù",sOp,x); ¼½ÄÀº ¼¼ °³À̳ª Á¦°øµÈ º¯¼ö´Â µÎ °³ »ÓÀÌ´Ù. ÀÌ ÇÔ¼ö´Â °¡º¯ Àμö¸¦ ÃëÇϹǷΠÄÄÆÄÀϽÿ¡´Â ÀμöÀÇ °³¼ö°¡ ºÎÁ·ÇÏ´Ù°í Çؼ ¿¡·¯°¡ ¹ß»ýÇÏÁö ¾ÊÀ¸¸ç ½ÇÇàÁß¿¡ º¯¼ö°¡ ºÎÁ·ÇÒ °æ¿ì ½ºÅÃÀÇ ´ÙÀ½ ¹øÁö¿¡¼ ¾²·¹±â°ªÀ» °¡Á®¿Í ä¿ö ³Ö°Ô µÇ¹Ç·Î ¾û¶×ÇÑ °á°ú°¡ Ãâ·ÂµÉ ¼ö ÀÖÀ¸¸ç Æ÷ÀÎÅÍ°ªÀ» ÀÐÀ» °æ¿ì´Â Access Violation µîÀÇ ¿¹¿Ü¸¦ ÀÏÀ¸Å³ ¼öµµ ÀÖ´Ù. 2.¼½Ä°ú ´ëÀÀµÇ´Â º¯¼öÀÇ Å¸ÀÔÀº ¹Ýµå½Ã ÀÏÄ¡ÇØ¾ß ÇÑ´Ù. %d¿¡ ¹®ÀÚ¿ º¯¼ö°¡ ´ëÀÀµÇ°Å³ª ¹Ý´ë·Î %s¿¡ Á¤¼öÇü º¯¼ö°¡ ´ëÀÀµÇ¸é ¸¶Âù°¡Áö·Î ¿¹¿Ü¸¦ ÀÏÀ¸Å³ ¼ö ÀÖ´Ù. 3.wsprintf´Â 1024ÀÚ±îÁöÀÇ Ãâ·Â ¹öÆÛ¸¸À» Áö¿øÇÑ´Ù. Äõ¸®¹®À̳ª ·Î±×¹®°°ÀÌ ´ë´ÜÈ÷ ±ä ¹®ÀÚ¿À» Á¶¸³ÇÒ ¶§´Â ÀÌ ÇÔ¼ö¸¦ »ç¿ëÇÒ ¼ö ¾ø´Ù. 1024ÀÚ ÀÌ»óÀÇ ¹®ÀÚ¿À» Á¶¸³ÇÒ ¶§´Â sprintf µîÀÇ C ·±Å¸ÀÓ ÇÔ¼ö¸¦ »ç¿ëÇØ¾ß ÇÑ´Ù. 4.wsprintf´Â ½Ç¼ö ¼½ÄÀº Á¶¸³ÇÏÁö ¸øÇÑ´Ù. ½Ç¼ö ¼½ÄÀ» ¹®ÀÚ¿¿¡ Á¶¸³ÇÏ°íÀÚ ÇÒ °æ¿ì´Â strtod µîÀÇ ÇÔ¼ö·Î ½Ç¼ö¸¦ ¹®ÀÚ¿·Î ¸ÕÀú ¹Ù²ã ³õ°í %s·Î ¹Þ°Å³ª ¾Æ´Ï¸é sprintf µîÀÇ C ·±Å¸ÀÓ ÇÔ¼ö¸¦ »ç¿ëÇÏ´Â °ÍÀÌ ÁÁ´Ù. 5.ÀÌ ÇÔ¼ö´Â °¡º¯ Àμö¸¦ Áö¿øÇϱ⠶§¹®¿¡ ÀϹÝÀûÀÎ API ÇÔ¼ö¿Í´Â ´Þ¸® _cdecl È£Ãâ ±Ô¾àÀ» »ç¿ëÇÑ´Ù. µû¶ó¼ ÀÌ ÇÔ¼ö¸¦ È£ÃâÇÏ´Â ÇÁ·Î¼¼½º´Â ¹Ýµå½Ã ½ºÅÃÀ» Á¤¸®ÇØ ÁÖ¾î¾ß Çϸç Àμö´Â ¹Ýµå½Ã ¿À¸¥ÂÊ¿¡¼ ¿ÞÂÊÀ¸·Î Àü´ÞÇØ ÁÖ¾î¾ß ÇÑ´Ù. C¾ð¾î ÄÄÆÄÀÏ·¯´Â ÀÌ °úÁ¤À» ÀÚµ¿À¸·Î ¼öÇàÇØ ÁÖÁö¸¸ ´Ù¸¥ ¹æ¹ý(¿¹¸¦ µé¾î ¾î¼Àºí¸®)À¸·Î ÀÌ ÇÔ¼ö¸¦ »ç¿ëÇÒ ¶§´Â È£Ãâ±Ô¾à¿¡ µû¸¥ 󸮸¦ ¹Ýµå½Ã ÇØ ÁÖ¾î¾ß ÇÑ´Ù. | ||||||||||||||||||||||||||||||||||||||||
Âü°íÇÔ¼ö |
sprintf : 1000ÀÚ ÀÌ»óÀ» Áö¿øÇÏ¸ç ½Ç¼ö ¼½Äµµ »ç¿ëÇÒ ¼ö ÀÖ´Ù. API ÇÔ¼ö´Â ¾Æ´Ï¸ç À¯´ÏÄÚµå´Â Áö¿øÇÏÁö ¾Ê´Â´Ù. | ||||||||||||||||||||||||||||||||||||||||
Ç÷§Æû | 95ÀÌ»ó | ||||||||||||||||||||||||||||||||||||||||
ÂüÁ¶ |
|
written by http://www.winapi.co.kr
|