SetFormat

¼öÇÐ ¿¬»êÀ¸·Î »ý¼ºµÈ ºÎµ¿ ¼Ò¼öÁ¡ ¼ö³ª Á¤¼öÀÇ Çü½ÄÀ» ¼³Á¤ÇÕ´Ï´Ù.

SetFormat, NumberType, Format

¸Å°³º¯¼ö

NumberType

¹Ýµå½Ã ´ÙÀ½ Áß ÇϳªÀÔ´Ï´Ù: IntegerFast, FloatFast, Integer, ¶Ç´Â Float (µÎ °³ÀÇ ºü¸¥ ¸ðµå´Â v1.0.48+¸¦ ¿ä±¸ÇÕ´Ï´Ù; ³íÆò ÂüÁ¶).

Format

NumberType Integer ¶Ç´Â IntegerFast¿¡ ´ëÇÏ¿©, ½ÊÀ°Áø¼ö´Â H ¶Ç´Â HEX¸¦ ÁöÁ¤Çϰųª, ¶Ç´Â ½ÊÁø¼öÀ̸é D¸¦ ÁöÁ¤ÇϽʽÿÀ. ½ÊÀ°Áø¼ö´Â ¸ðµÎ Á¢µÎ»ç 0x·Î ½ÃÀÛÇÕ´Ï´Ù (¿¹, 0xFF). [AHK_L 42+]: ½ÊÀ°Áø Á¤¼ö´Â A-F ÀÚ¸®ÀÇ Çü½ÄÀÌ ÀÌ ¸Å°³º¯¼ö°¡ hÀÌ¸é ¼Ò¹®ÀÚÀÌ°í HÀÌ¸é ´ë¹®ÀÚÀÔ´Ï´Ù.

NumberType Float ¶Ç´Â FloatFast¿¡ ´ëÇÏ¿©, TotalWidth.DecimalPlaces¸¦ ÁöÁ¤ÇϽʽÿÀ (¿¹, 0.6). v1.0.46.11+¿¡¼­, ±âÈ£ "e"¸¦ Ãß°¡ÇØ °úÇРǥ±â¹ýÀ» ¸¸µé¾î ³¾ ¼ö ÀÖ½À´Ï´Ù; ¿¹, 0.6e ¶Ç´Â 0.6E (´ë¹®ÀÚ¸¦ »ç¿ëÇÏ¸é °¢ ¼ýÀÚ¿¡ ¼Ò¹®ÀÚ°¡ ¾Æ´Ï¶ó ´ë¹®ÀÚ E¸¦ »ý»êÇÕ´Ï´Ù). ÁÖÀÇ: AutoHotkey 1.x¿¡¼­, °úÇÐÀû Ç¥±â¹ýÀº ¹Ýµå½Ã ¼Ò¼ö Á¡À» Æ÷ÇÔÇØ¾ß ÇÕ´Ï´Ù; ¿¹, 1.0e1´Â À¯È¿ÇÏÁö¸¸ 1e1´Â À¯È¿ÇÏÁö ¾Ê½À´Ï´Ù.

TotalWidth´Â ÀüÇüÀûÀ¸·Î 0ÀÔ´Ï´Ù. ±× ¼ýÀÚ¿¡ ºó °ø°£ÀÌ Àְųª 0À¸·Î µ¡´ë¸é ¾ÈµÈ´Ù´Â ¶æÀÔ´Ï´Ù. ´õ ³ôÀº °ªÀ» »ç¿ëÇϸé, ±× ³Êºñ¸¸Å­ ¸¸µé±â À§ÇØ ¼ýÀÚµéÀº ½ºÆäÀ̽º³ª 0À¸·Î µ¡´ë¾îÁý´Ï´Ù (³íÆò ÂüÁ¶).

DecimalPlaces´Â º¸¿©ÁÙ ¼Ò¼ö Á¡ ÀÚ¸®ÀÇ °¹¼öÀÔ´Ï´Ù. (¹Ý¿Ã¸²ÀÌ ÀϾ´Ï´Ù). ºñ¾î Àְųª 0À̸é, ¼Ò¼öÁ¡ ºÎºÐµµ ¼Ò¼öÁ¡µµ º¸¿©ÁÖÁö ¾Ê½À´Ï´Ù. Áï, ºÎµ¿ ¼Ò¼öÁ¡ ¼öÀÇ °á°ú´Â Á¤¼ö·Î È­¸é¿¡ º¸¿©ÁÝ´Ï´Ù. ½ÃÀÛ ±âº» °ªÀº 6ÀÔ´Ï´Ù.

Padding: ¸¸¾à TotalWidth°¡ ÆеùÀ» ¾ß±âÇÒ ¸¸Å­ ³ô´Ù¸é, ½ºÆäÀ̽º°¡ ±× ¿ÞÂÊ¿¡ Ãß°¡µË´Ï´Ù; Áï, °¢ ¼ýÀÚ´Â ¿À¸¥ÂÊÀ¸·Î Á¤·ÄµË´Ï´Ù. ´ë½Å¿¡ ¿ÞÂÊ Á¤·ÄÀ» ÇÏ·Á¸é, TotalWidth ¾Õ¿¡ ¸¶À̳ʽº »çÀÎÀ» Ãß°¡ÇϽʽÿÀ. ½ºÆäÀ̽º ´ë½Å¿¡ 0À¸·Î µ¡´ë·Á¸é, TotalWidth ¾Õ¿¡ 0À» Ãß°¡ÇϽʽÿÀ (¿¹, 06.2).

ºü¸¥ ¸ðµå vs. ´À¸° ¸ðµå

v1.0.48+¿¡¼­, Integer ´ë½Å¿¡ IntegerFast ±×¸®°í Float ´ë½Å¿¡ FloatFast¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

´À¸° ¸ðµåÀÎ "Integer" ¶Ç´Â "Float"°¡ ½ºÅ©¸³Æ® ¾îµð¼­µç »ç¿ëµÈ´Ù¸é, SetFormat ÁÙÀÌ ÀüÇô ½ÇÇàµÇÁö ¾Ê´õ¶óµµ, Á¤¼ö³ª ºÎµ¿ ¼Ò¼öÁ¡ ¼öÀÇ Ä³½¬´Â (°¢°¢) ½ºÅ©¸³Æ®°¡ ±âµ¿ÇÏ´Â ¼ø°£ ²¨Áý´Ï´Ù.

ºÎµ¿ ¼Ò¼öÁ¡ Çü½Ä

v1.0.48+¿¡¼­, ºÎµ¿ ¼Ò¼öÁ¡ º¯¼ö´Â ´ë·« ³»ºÎÀûÀ¸·Î 15 ÀÚ¸®ÀÇ Á¤¹Ðµµ¸¦ °¡Áý´Ï´Ù. ´Ü, SetFormat Float (Áï, ´À¸° ¸ðµå)°¡ ½ºÅ©¸³Æ®¿¡ Á¸ÀçÇÏ´Â °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù. ÀÌ °æ¿ì ÀúÀåµÈ Á¤¹ÐµµÀÇ ºÎµ¿ ¼Ò¼öÁ¡ ¼ö´Â DecimalPlaces¿¡ ÀÇÇÏ¿© °áÁ¤µË´Ï´Ù (pre-1.0.48 ¹öÀü°ú °°½À´Ï´Ù). ´Ù¸¥ ¸»·Î, ºÎµ¿ ¼Ò¼öÁ¡ ¼öÀÇ °á°ú°¡ ÀÏ´Ü º¯¼ö ¾È¿¡ ÀúÀåµÇ¸é, ¿©ºÐÀÇ Á¤¹Ðµµ´Â ¼Ò½ÇµË´Ï´Ù. ±×¸®°í SetFormat, Float, 0.15¿Í °°Àº °ÍÀ¸·Î ´Ù½Ã °è»êÀ» ÇÏÁö ¾Ê°í´Â ´Ù½Ã ¿äûÇÒ ¼ö ¾ø½À´Ï´Ù. ÀÌ·± Á¤¹ÐµµÀÇ ¼Õ½ÇÀ» ÇÇÇÏ·Á¸é, SetFormat FloatÀ» ½ºÅ©¸³Æ®¿¡ »ç¿ëÇÏÁö ¸¶½Ê½Ã¿À. ´Ù½Ã ¸»ÇØ, ´ë½Å SetFormat FloatFast¸¦ »ç¿ëÇϽʽÿÀ.

´À¸° ¸ðµåÀÌµç ºü¸¥ ¸ðµåÀÌµç »ó°ü ¾øÀÌ, ºÎµ¿ ¼Ò¼öÁ¡ ¼ö°¡ °á°úÀÌ°í º¯¼ö´Â ÅؽºÆ® ¹®ÀÚ¿­·Î º¯È¯µÇ°Å³ª º¸¿©Áú ¶§ DecimalPlaces·Î ³»¸²µË´Ï´Ù. (¿¹, MsgBox ¶Ç´Â FileAppend). ¿Ïº®ÇÑ Á¤¹Ðµµ¸¦ º¸·Á¸é, ´ÙÀ½ SetFormat, FloatFast, 0.15°ú °°ÀÌ »ç¿ëÇϽʽÿÀ.

ºÎµ¿ ¼Ò¼öÁ¡ ¼ö¸¦ Á¤¼ö·Î º¯È¯ÇÏ·Á¸é, Var:=Round(Var), Var:=Floor(Var), ¶Ç´Â Var:=Ceil(Var)¸¦ »ç¿ëÇϽʽÿÀ. Á¤¼ö¸¦ ºÎµ¿ ¼Ò¼öÁ¡ ¼­·Î º¯È¯ÇÏ·Á¸é, 0.0À» ´õÇϽʽÿÀ (¿¹, Var+=0.0) ¶Ç´Â ´ÙÀ½ MyFloat:=Round(MyInteger, 1)ó·³ »ç¿ëÇϽʽÿÀ.

³»Àå º¯¼ö A_FormatFloat¿¡´Â ÇöÀç ºÎµ¿ ¼Ò¼öÁ¡ Çü½ÄÀÌ Æ÷ÇԵǾî ÀÖ½À´Ï´Ù (¿¹, 0.6).

Á¤¼ö Æ÷¸Ë

Á¤¼ö °á°ú´Â º¸Åë ½ÊÀ°Áø¼ö°¡ ¾Æ´Ï¶ó ½ÊÁø¼ö·Î º¸¿©ÁÝ´Ï´Ù. ½ÊÀ°Áø¼ö·Î ÀüȯÇÏ·Á¸é, SetFormat, IntegerFast, Hex¸¦ »ç¿ëÇϽʽÿÀ. ÀÌ°ÍÀº µµ Á¤¼ö¸¦ ½ÊÁø¼ö¿¡¼­ ½ÊÀ°Áø¼ö·Î (¶Ç´Â ±× ¹Ý´ë·Î) º¯È­Çϴµ¥¿¡µµ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ ÆäÀÌÁö ¸Ç ¾Æ·¡¿¡ ¿¹Á¦¿¡ º¸¿©ÁÝ´Ï´Ù.

½ºÅ©¸³Æ®¿¡ ÁöÁ¤µÈ ±âÈ£ ±×´ë·ÎÀÇ Á¤¼ö´Â ½ÊÀ°Áø¼ö ¶Ç´Â ½ÊÁø¼ö·Î ¾µ ¼ö ÀÖ½À´Ï´Ù. ½ÊÀ°Áø Á¤¼ö´Â ¸ðµÎ Á¢µÎ»ç 0x·Î ½ÃÀÛÇÕ´Ï´Ù (¿¹, 0xA9). ¼ýÄ¡ °ªÀÌ ¿¹»óµÇ´Â °÷ÀÌ¸é ¾îµðµç »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, Sleep 0xFF´Â Sleep 255¿Í µ¿µîÇÕ´Ï´Ù. SetFormatÀ¸·Î ¼³Á¤µÈ ÇöÀç Á¤¼öÀÇ Çü½Ä¿¡ »ó°üÀÌ ¾ø½À´Ï´Ù.

AutoHotkey´Â 64-ºñÆ® ºÎÈ£ÀÖ´Â Á¤¼ö¸¦ Áö¿øÇÕ´Ï´Ù. ±× ¹üÀ§´Â -9223372036854775808 (-0x8000000000000000)ºÎÅÍ 9223372036854775807 (0x7FFFFFFFFFFFFFFF) ±îÁöÀÔ´Ï´Ù.

³»Àå º¯¼ö A_FormatInteger¿¡ ÇöÀç Á¤¼ö Çü½ÄÀÌ µé¾î ÀÖ½À´Ï´Ù (H ¶Ç´Â D).

ÃÑÆò

SetFormatÀÌ ½ºÅ©¸³Æ®¿¡ »ç¿ëµÇÁö ¾ÊÀ¸¸é, Á¤¼ö´Â ±âº»°ªÀÌ ½ÊÁø Çü½ÄÀÌ°í, ºÎµ¿ ¼Ò¼öÁ¡ ¼ö´Â ±âº»°ªÀÌ TotalWidth.DecimalPlaces = 0.6ÀÔ´Ï´Ù. »õ·Î ±âµ¿µÈ ¾²·¹µå´Â ¸ðµÎ (¿¹¸¦ µé¾î ÇÖÅ°, ¸ÂÃã ¸Þ´º Ç׸ñ, ¶Ç´Â ŸÀÌ¸Ó ¼­ºê·çƾ) ´ÙÀ½ ±âº» °ªÀ» °¡Áö°í »õ·Ó°Ô ½ÃÀÛÇÕ´Ï´Ù; ±×·¯³ª ÀÌ ±âº»°ªÀº ÀÚµ¿ ½ÇÇà ¼½¼Ç (½ºÅ©¸³Æ®ÀÇ »ó´Ü)¿¡¼­ SetFormat¸¦ »ç¿ëÇÏ¿© ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù.

x=%y%¿Í °°Àº ¿¹Àü-½ºÅ¸ÀÏÀÇ ÇÒ´çÀº ¾Õ µÚ¿¡ ½ºÆäÀ̽º¸¦ »ý·«ÇÕ´Ï´Ù (Áï, Æеù). À̸¦ ÇÇÇÏ·Á¸é, AutoTrim ¶Ç´Â ½ÖÁ¡-µîÈ£ ¿¬»êÀÚ¸¦ »ç¿ëÇϽʽÿÀ (¿¹, x:=y).

"if var is number/integer/float"¸¦ »ç¿ëÇÏ¸é º¯¼ö¿¡ ¼öÄ¡ °ªÀÌ µé¾î ÀÖ´ÂÁö ¾Ë¾Æ³¾ ¼ö ÀÖ½À´Ï´Ù.

ºÎµ¿ ¼Ò¼öÁ¡ ¼ö ¿¬»êÀ» ÇÒ ÇÊ¿ä ¾øÀÌ Á¤¼ö¿¡ 0 ¶Ç´Â ½ºÆäÀ̽º¸¦ µ¡´ë·Á¸é, ´ÙÀ½ ¿¹Á¦¸¦ µû¸£½Ê½Ã¿À:

Var := "          " . Var     ; µû¿ÈÇ¥ ¾È¿¡ 10°³ÀÇ ½ºÆäÀ̽º°¡ µé¾î ÀÖ½À´Ï´Ù.  0À¸·Î µ¡´ë·Á¸é, ½ºÆäÀ̽º¸¦ 0À¸·Î ±³Ã¼ÇϽʽÿÀ.
StringRight, Var, Var, 10  ; Var ¾È¿¡ ÀÖ´Â ¼ýÀÚ¿¡ ½ºÆäÀ̽º¸¦ µ¡´ë ÃÑ ³Êºñ°¡ 10 ¹®ÀÚ¿¡ ¸Âµµ·Ï ¸¸µì´Ï´Ù.
Var := SubStr("          " . Var, -9)  ; À§ÀÇ µÎ ÁÙÀ» ÇÑ ÁÙ·Î ´ë½ÅÇÕ´Ï´Ù.

°ü·Ã Ç׸ñ

Format(), Ç¥Çö½Ä ÇÒ´ç (:=), EnvAdd, EnvSub, EnvMult, EnvDiv, AutoTrim, if var is type

¿¹Á¦

Var = 11.333333
SetFormat, float, 6.2
Var -= 1  ; Var¿¡ 10.33À» ¼³Á¤ÇÕ´Ï´Ù. ÃÑ ³Êºñ°¡ 6À̹ǷΠ¾Õ¿¡ ½ºÆäÀ̽º°¡ Çϳª ÀÖ½À´Ï´Ù.
SetFormat, float, 0.2
Var += 1  ; Var¿¡ 11.33À» ¼³Á¤ÇÕ´Ï´Ù. ¾Õ¿¡ ½ºÆäÀ̽º°¡ ¾ø½À´Ï´Ù.
SetFormat, float, 06.0
Var += 0  ; Var¿¡ 000011À» ¼³Á¤ÇÕ´Ï´Ù.

; ½ÊÁø Á¤¼ö¸¦ ½ÊÀ°Áø Çü½ÄÀ¸·Î º¯È¯ÇÕ´Ï´Ù:
SetFormat, IntegerFast, hex
Var += 0  ; Var¿¡ 0xb¸¦ ¼³Á¤ÇÕ´Ï´Ù (ÀÌÀü¿¡ 11ÀÌ µé¾î ÀÖ¾ú½À´Ï´Ù).
Var .= ""  ; "ºü¸¥" ¸ðµåÀ̱⠶§¹®¿¡ ÇʼöÀÔ´Ï´Ù.
SetFormat, IntegerFast, d