ÃÑ ÆäÀÌÁö ¼ö : 3224
![]()
|
Facebook Joinc ±×·ì
Joinc QA »çÀÌÆ®
![]()
Tweet
joinc´Â Firefox¿Í chrome¿¡¼ Å×½ºÆ® Çß½À´Ï´Ù. IE¿¡¼´Â Å×À̺íÀÌ ±úÁö°Å³ª À̹ÌÁö°¡ º¸ÀÌÁö ¾ÊÀ» ¼ö ÀÖ½À´Ï´Ù. ƯÈ÷ ±¸±Û DocsÀ̹ÌÁöÀÇ °æ¿ì ¿¢¹Úó¸®µÉ ¼ö ÀÖ½À´Ï´Ù. ¿ì¸®´Â 5Àå¿¡¼ µ¥ÀÌÅÍ Å¸ÀÔ¿¡ ´ëÇØ¼ °£´ÜÈ÷ ¾Ë¾Æº¸¾Ò´Ù. ¿©±â¿¡¼´Â ÀÌµé µ¥ÀÌÅÍ Å¸ÀÔ¿¡ ´ëÇØ¼ Á»´õ ÀÚ¼¼È÷ ¾Ë¾Æº¸µµ·Ï ÇÒ°ÍÀÌ´Ù. 1 Data Types
¿ì¸®°¡ »ç¿ëÇÏ´Â µ¥ÀÌÅÍ´Â ÄÄÇ»ÅÍÀÇ ¸Þ¸ð¸®¿¡ ¿¬¼ÓµÈ ºñÆ®ÀÇ ³ª¿·Î ÀúÀåÀÌ µÈ´Ù. ÀÌ·¯ÇÑ ºñÆ®ÀÇ ³ª¿Àº ÄÄÇ»ÅÍÀÔÀå¿¡¼´Â ¹®Á¦°¡ ¾È µÇ°ÚÁö¸¸ Àΰ£ÀÇ ÀÔÀå¿¡¼´Â ¾Ë¾Æº¸±â Èûµé´Ù´Â ¹®Á¦°¡ ¹ß»ýÇÑ´Ù. ±×·¡¼ µ¥ÀÌÅÍ Å¸ÀÔÀ» µÎ¾î¼ Àΰ£ÀÌ Á»´õ ½±°Ô »ç¿ëÇÒ ¼ö ÀÖµµ·Ï Çϰí ÀÖ´Ù.
µ¥ÀÌÅÍ Å¸ÀÔÀº ´ÙÀ½°ú °°Àº Ư¡À» °¡Áö°í ÀÖ´Ù.
0000 0000 0110 0111
ÀÌ °ªÀÌ ¾î¶»°Ô Ç¥ÇöµÉ±î ? À̰ÍÀº µ¥ÀÌÅÍ Å¸ÀÔÀ» ¾î¶»°Ô Á¤ÀÇÇÏ´À³Ä¿¡ µû¶ó ´Þ¶óÁø´Ù. ¸¸¾à µ¥ÀÌÅÍ Å¸ÀÔÀ» 'int·Î Çϱâ·Î Çß´Ù¸é ¼ýÀÚ 103À¸·Î Ç¥ÇöµÉ °ÍÀÌ´Ù. ±×·¯³ª ¹®ÀÚ¸¦ ÀúÀåÇÏ´Â char·Î Çϱâ·Î Çß´Ù¸é ¿µ¹®ÀÚ g·Î Ç¥ÇöÀÌ µÈ´Ù.
µ¥ÀÌÅÍ Å¸ÀÔÀº ÀÌ·¸°Ô Àΰ£ÀÇ ÀÔÀå¿¡¼ ÄÄÇ»ÅÍ ¸Þ¸ð¸®¿¡ ÀúÀåµÈ µ¥ÀÌÅ͸¦ ¾î¶»°Ô ´Ù·ê °ÍÀÎÁö¸¦ °áÁ¤Çϱâ À§Çؼ »ç¿ëÀÌ µÈ´Ù.
¾Æ·¡ÀÇ Äڵ带 ½ÇÇà½ÃÄѺ¸±â ¹Ù¶õ´Ù. #include <stdio.h> int main(int argc, char **argv) { int a = 103; char b = 103; printf("%d\n", a); printf("%c\n", b); }¶È°°Àº 103Àε¥, ¼·Î ´Ù¸£°Ô Ãâ·ÂµÇ´Â°É È®ÀÎÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù. 2 Primitive Data Types
Àΰ£Àº ¸Å¿ì ´Ù¾çÇÑ ÇüÅÂÀÇ µ¥ÀÌÅ͸¦ ´Ù·ç±â¸¦ ¿øÇϰí, ±×·±ÀÏÀ» ÇÒ ¼ö ÀÖ´Â ÇÁ·Î±×·¥À» ¸¸µé¾î ³¾ ¼ö ÀÖ¾î¾ß ÇÑ´Ù. ´Ù·ç´Â µ¥ÀÌÅÍÀÇ ÇüŰ¡ ´Ù¾çÇÏ´Ï, µ¥ÀÌÅÍ Å¸ÀÔ ¿ª½Ã ´Ù¾çÇϸé ÁÁÀ» °ÍÀÌ´Ù. ±×·¯³ª ÄÄÇ»ÅÍ´Â ¸Å¿ì ´Ü¼øÇÑ ±â°è´Ù. ¾µµ¥¾øÀÌ µ¥ÀÌÅÍ Å¸ÀÔÀ» ÀÌ°Í Àú°Í ¸¸µé¸é, À̰ÍÀ» ´Ù·ç´Â ÄÄÇ»ÅÍ ¿ª½Ã ´Þ°¡¿öÇÏÁö ¾ÊÀ» °ÍÀÌ´Ù. ÇÁ·Î±×·¡¸Ó ¿ª½Ã °¢ µ¥ÀÌÅÍ Å¸ÀÔ¿¡ µû¸¥ °í·Á»çÇ×ÀÌ ´Ã¾î³ª´Ï ±ÇÀåÇÒ¸¸ÇÑ »çÇ×ÀÌ ¾Æ´Ï´Ù.
±×·¡¼ µ¥ÀÌÅÍŸÀÔÀ» ´Ù·ç¾î¾ß ÇÏ´Â ÇÁ·Î±×·¡¹Ö ¾ð¾î´Â Primitive Data TypeÀ̶ó°í ºÒ¸®¿ì´Â ÃÖ¼ÒÇÑÀÇ ¹Ýµå½Ã ÇÊ¿äÇÑ µ¥ÀÌÅÍ Å¸ÀÔÀ» Áö¿øÇϰí ÀÖ´Ù. Primitive Data TypeÀº ¿ø½Ã µ¥ÀÌÅÍ Å¸ÀÔ À̶ó°í ºÎ¸£±âµµ ÇÑ´Ù.
°¢ ¿ø½Ã µ¥ÀÌÅÍ Å¸ÀÔÀº °íÀ¯ÀÇ Å©±â¸¦ °¡Áö°í ÀÖÀ¸¸ç, Ç¥ÇöÇÒ ¼ö ÀÖ´Â µ¥ÀÌÅÍÀÇ ÇѰ谡 Á¤ÀǵǾî ÀÖ´Ù. ´ÙÀ½Àº C ¾ð¾î¿¡¼ Áö¿øÇÏ´Â ¿ø½Ã µ¥ÀÌÅÍ Å¸ÀÔ°ú Å©±â, µ¥ÀÌÅÍ ¹üÀ§¸¦ º¸¿©Áִ ǥ´Ù. 2.1 ¼ýÀÚÇü ¿ø½Ã µ¥ÀÌÅÍ Å¸ÀÔ
¼ýÀÚ¸¦ Ç¥ÇöÇϱâ À§Çؼ »ç¿ëµÇ´Â µ¥ÀÌÅÍ Å¸ÀÔÀÌ´Ù. Å©°Ô Á¤¼öÇü µ¥ÀÌÅ͸¦ Ç¥ÇöÇϱâ À§ÇÑ Á¤¼öÇü ¿ø½Ã µ¥ÀÌÅÍ Å¸ÀÔ°ú ºÎµ¿¼Ò¼ýÁ¡Çü ¿ø½Ã µ¥ÀÌÅÍ Å¸ÀÔÀ¸·Î ³ª´ ¼ö ÀÖ´Ù.
unsigned¸¦ ¸í½ÃÇÏ°Ô µÇ¸é ¾çÀÇ Á¤¼ö¸¸ Ç¥ÇöÇÏ°Ô µÈ´Ù. À½ÀÇ Á¤¼ö¸¦ Ç¥ÇöÇÒ Çʿ䰡 ¾øÀ¸´Ï ±×¸¸Å ¾ç¼ö ÂÊÀ¸·Î Ç¥Çö¹üÀ§°¡ ´Ã¾î³¯ °ÍÀÌ´Ù. unsigned char À̶ó¸é 255, unsigned long int ¶ó¸é 4,294,967,295 °¡ µÈ´Ù.
2.2 enumerated type
ÀϹÝÀûÀ¸·Î enumerated ŸÀÔÀº ¼ýÀÚ·Î ³ª¿µÈ Ä«Å×°í¸® °°Àº µ¥ÀÌÅ͸¦ ¸¸µé±â À§Çؼ »ç¿ëÇÑ´Ù. C¿¡¼´Â enumÀ» ÀÌ¿ëÇØ¼ enumerated ŸÀÔÀÇ µ¥ÀÌÅ͸¦ Á¤ÀÇÇÒ ¼ö ÀÖ´Ù. enum cardsuit {
CLUBS,
DIAMONDS,
HEARTS,
SPADES
};
ÀÌÁ¦ enum À» ÀÌ·ç´Â °¢°¢ÀÇ ¿ä¼ÒµéÀº ¼ýÀÚ 0,1,2... ·Î Â÷·Ê´ë·Î ´ëÀÀµÇ°Ô µÈ´Ù. ´ÙÀ½ÀÇ ÇÁ·Î±×·¥À» ½ÇÇà½ÃÄÑ º¸ÀÚ.#include <stdio.h>
enum cardsuit {
CLUBS,
DIAMONDS,
HEARTS,
SPACES
};
int main()
{
printf("Card CLUBS is %d\n", CLUBS);
printf("Card DIAMONDS is %d\n", DIAMONDS);
printf("Card HEARTS is %d\n", HEARTS);
printf("Card SPACES is %d\n", SPACES);
}
´ÙÀ½°ú °°Àº °á°ú¸¦ È®ÀÎÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù. # ./enum Card CLUBS is 0 Card DIAMONDS is 1 Card HEARTS is 2 Card SPACES is 3
±×·¸Áö¸¸ CLUBS °¡ 0ÀÌ ¾Æ´Ñ ´Ù¸¥ ¼ö·Î ´ëÀÀµÇ¾î¾ß ÇÒ °æ¿ìµµ »ý±æ °ÍÀÌ´Ù. ±×·² ¶©, ÇÊ¿äÇÑ °ªÀ» ´ëÀÔ½ÃÄÑ ÁÖ¸é µÈ´Ù. Áï °ªÀ» ¸í½ÃÇÏÁö ¾ÊÀ¸¸é 0ºÎÅÍ ½ÃÀÛÇØ¼ 1¾¿ Áõ°¡Çϰí, °ªÀ» ¸í½ÃÇÏ¸é ¸í½ÃµÈ °ªÀ» ½ÃÀÛÀ¸·Î 1¾¿ Áõ°¡ÇÏ´Â °ÍÀ¸·Î º¸¸é µÈ´Ù.
¹®Á¦
cardsuit¸¦ ´ÙÀ½°ú °°ÀÌ Á¤ÀÇ ÇßÀ» ¶§, ¾î¶² °ªÀÌ Ãâ·ÂµÉÁö »ý°¢ÇØ º¸¶ó.
enum cardsuit {
CLUBS = 1,
DIAMONDS,
HEARTS = 100,
SPACES
};
2.3 Pointer type
ÄÄÇ»ÅÍ´Â °è»êÀ» Çϱâ À§ÇÑ ±â°è´Ù. À̶§ °è»ê¿¡ »ç¿ëµÉ ¸ðµç µ¥ÀÌÅÍ´Â ÀÏ´Ü ¸Þ¸ð¸®·Î ÀÐÇôÁ®¼ ÇÊ¿äÇÑ °è»êÀ» ÇÏ°Ô µÈ´Ù. ¿¹¸¦ µé¾î Çϵåµð½ºÅ©¿¡ A ¶ó´Â ¹®¼°¡ ÀÖ´Ù°í °¡Á¤ÇØ º¸ÀÚ. ÀÌ ¹®¼¸¦ ÆíÁýÇϱâ À§ÇÑ ÇÁ·Î±×·¥À» °¡µ¿½Ã۸é, ÇÁ·Î±×·¥Àº Çϵåµð½ºÅ©¿¡ ÀÖ´Â ¹®¼¸¦ ¸ðµÎ ÀÐ¾î¼ ÄÄÇ»ÅÍÀÇ ¸Þ¸ð¸®·Î ºÒ·¯µéÀÎ ´ÙÀ½ ÇÊ¿äÇÑ ÀÏÀ» ÇÏ°Ô µÈ´Ù. ´Ù¸¥ ¸ðµç ¿¬»êµé¿ª½Ã ¸¶Âù°¡Áö´Ù.
±×·¸´Ù¸é ¹®Á¦°¡ ¹ß»ýÇÑ´Ù. ÄÄÇ»ÅÍ¿¡´Â ¿©·¯°³ÀÇ ÇÁ·Î±×·¥ÀÌ ¶° ÀÖÀ»Å×´Ï, °¢°¢ÀÇ ÇÁ·Î±×·¥ÀÌ »ç¿ëÇÏ´Â µ¥ÀÌÅͰ¡ ¸Þ¸ð¸®ÀÇ ¿©±âÀú±â ÀúÀåµÇ¾î ÀÖÀ» °ÍÀÌ´Ù. À̶§ ÇÁ·Î±×·¥Àº ÀÚ½ÅÀÌ »ç¿ëÇÒ µ¥ÀÌÅͰ¡ ¸Þ¸ð¸®»óÀÇ ¾î´À À§Ä¡¿¡ ÀÖ´ÂÁö ¾Ë°í ÀÖ¾î¾ß ÇÑ´Ù.
À̸¦ À§Çؼ ¸Þ¸ð¸®¿¡´Â ¾Æ·¡ ±×¸²°ú °°ÀÌ ÁÖ¼Ò °ªÀÌ ºÎ¿©µÇ¾î ÀÖ´Ù. ![]()
ÇÁ·Î±×·¥Àº ÀÌ ±â¾ï°ªÀ» ±â¾ïÇØ¼ µ¥ÀÌÅÍÀÇ À§Ä¡¸¦ Á¤È®È÷ ã¾Æ³»¾î¼ Àоî¿À°Ô µÇ´Â °ÍÀÌ´Ù. Pointer´Â ÀÌ·¯ÇÑ ÁÖ¼Ò°ªÀ» ÀúÀåÇÏ´Â µ¥ÀÌÅÍ Å¸ÀÔÀÌ´Ù.
´Ù¸¥ µ¥ÀÌÅÍ Å¸ÀÔµéÀÌ ±×·¸µíÀÌ pointerµµ °íÀ¯ÀÇ Å©±â¸¦ °¡Áö°í ÀÖ´Ù. pointer µ¥ÀÌÅÍ Å¸ÀÔÀÇ Å©±â´Â 4byteÀÌ´Ù. ¸Þ¸ð¸®»óÀÇ ÁÖ¼Ò¿¡´Â ¸¶À̳ʽº °ªÀÌ Çʿ䰡 ¾øÀ¸¹Ç·Î 0 - 4,294,967,295ÀÇ ¼ýÀÚ°¡ ÀúÀåµÈ´Ù. 32bit ÄÄÇ»ÅÍ¿¡ »ç¿ë°¡´ÉÇÑ ¸Þ¸ð¸®ÀÇ ÃÑÅ©±â°¡ 4Giga´Ù ¶ó´Â ¾ê±â°¡ ¿©±â¿¡¼ ³ª¿Â´Ù. °¡¸®Å³¼ö ÀÖ´Â ¼ýÀÚÀÇ ¹üÀ§°¡ 4,294,967,295 (¾à 4giga)À̹ǷÎ, À̸¦ ÃʰúÇÑ ¿µ¿ª¿¡ ÀúÀåµÈ µ¥ÀÌÅÍ´Â Àоî¿Ã ¼ö°¡ ¾ø±â ¶§¹®ÀÌ´Ù.
ÀÌ´Â C ¿Í °°Àº ÇÁ·Î±×·¡¹Ö ¾ð¾î¿¡µµ ±×´ë·Î Àû¿ëµÈ´Ù. Æ÷ÀÎÅÍÀÇ Å©±â°¡ 4byte ÀÌ´Ï, ÃÖ´ë´Ù·ê ¼ö ÀÖ´Â ¸Þ¸ð¸®ÀÇ Å©±â°¡ 4Giga·Î Á¦ÇÑÀÌ µÈ´Ù. ¹°·Ð ¿©·¯ºÐÀÌ 64bit ÄÄÇ»ÅÍ¿Í ¿î¿µÃ¼Á¦ ±×¸®°í ÄÄÆÄÀÏ·¯¸¦ »ç¿ëÇÑ´Ù¸é Å×¶ó byte±ÞÀÇ µ¥ÀÌÅ͸¦ ´Ù·ê ¼ö ÀÖ´Ù. 64bit ÄÄÇ»ÅͰ¡ ´ë¿ë·® µ¥ÀÌÅÍ Ã³¸®¿¡ À¯¸®ÇÏ´Ù´Â ¾ê±â°¡ ³ª¿À´Â ÀÌÀ¯´Ù.
Æ÷ÀÎÅÍ´Â ÀÌÂë¿¡¼ ³¡³»µµ·Ï ÇϰڴÙ. Æ÷ÀÎÅÍ¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ ³»¿ëÀº µû·Î ÇÑÀå Á¤µµ¸¦ ÇÒ¾ÖÇØ¼ ÀÚ¼¼È÷ ´Ù·çµµ·Ï ÇϰڴÙ. 3 type casting - Çüº¯È¯
¾Æ·¡ ÇÁ·Î±×·¥À» ÄÄÆÄÀÏ ÈÄ ½ÇÇà½ÃÄÑ º¸ÀÚ. #include <stdio.h> int main(int argc, char **argv) { unsigned char ch = 'c'; printf("%c\n", ch); ch = ch+1; printf("%c\n", ch); ch = ch+1; printf("%c\n", ch); }°á°ú·Î c d e °¡ Ãâ·ÂµÉ °ÍÀÌ´Ù.
ÀÌ»óÇϱº. ºÐ¸íÈ÷ µÎ°³´Â ¼·Î ´Ù¸¥ µ¥ÀÌÅÍ Å¸ÀÔÀε¥, ´õÇϱⰡ µÇ´Â±º ?
¾Õ¼ ¾ð±ÞÇßÁö¸¸, µ¥ÀÌÅÍÇüÀ̶õ Ç¥Çö¹æ½Ä¿¡ µû¸¥ °ÍÀÏ »ÓÀÌ´Ù. ÄÄÇ»ÅÍ ÀÔÀå¿¡¼´Â ¸ðµÎ°¡ ºñÆ®ÀÏ »ÓÀÌ´Ù. Áï ch+1Àº ÄÄÇ»ÅÍ ÀÔÀå¿¡¼ ´ÙÀ½°ú °°ÀÌ °è»êÀÌ µÈ´Ù. 0110 0011 = 'a' 0000 0000 0000 0000 0000 0000 0000 0001 = '1' ========================== 0000 0000 0110 0100 = 'b'¸¸¾à printf("%d\n" ch+1) À» ÇÑ´Ù¸é, 100 ÀÌ Ãâ·ÂµÉ °ÍÀÌ´Ù. ºñÆ®ÆÐÅÏÀ» ¼ýÀڷΠǥÇöÇϵµ·Ï Ç¥Çö¹æ½ÄÀ» ¹Ù²å±â ¶§¹®ÀÌ´Ù.
ÀÌ·¸°Ô ¸ðµÎ µ¿ÀÏÇÑ ºñÆ®ÀÏ »ÓÀÓÀ¸·Î ¼·Î ´Ù¸¥ ŸÀÔ°£ÀÇ °è»êÀÌ °¡´ÉÇØÁø´Ù. ±×·¯³ª ÀÌ°Ç ¾îµð±îÁö³ª °¡´ÉÇÏ´Ù ÀÏ»Ó ½ÇÁ¦·Î´Â ÀǵµÇÏÁö ¾Ê´Â ´Ù¾çÇÑ ¹®Á¦°¡ ¹ß»ýÇÒ ¼ö ÀÖ´Ù.
´Ù¸¥ µ¥ÀÌÅÍ Å¸ÀÔ³¢¸®¶óµµ ÁÖÀÇÇØ¼ ÇÁ·Î±×·¡¹ÖÀ» ÇÏ¸é ¹®Á¦ ¾ø°ÚÁö¸¸ °¡´ÉÇϸé, ŸÀÔÀ» ¸ÂÃß¾î¼ °è»êÀ» ÇÏ´Â°Ô ÁÁ´Ù.
if ((signed)i < -10)
{
...
}
ÀÌÁ¦ Á¦´ë·Î µÇ´Â°É È®ÀÎÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù.
ÇÁ·Î±×·¥À» ÀÛ¼ºÇÒ ¶§´Â µ¥ÀÌÅͰ¡ ¾îµð¿¡ ¾²ÀÏ °ÍÀÎÁö¸¦ ¸íÈ®È÷ ÇØ¼, ±×¿¡ ¸Â´Â µ¥ÀÌÅÍ Å¸ÀÔÀ» ÁöÁ¤ÇØ Áà¾ß ÇÑ´Ù. ±×·¸Áö¸¸ »ç¶÷ÀÌ´Ù º¸´Ï, À§¿¡¼ ó·³ »ç¼ÒÇÑ ½Ç¼ö¸¦ Çϱ⵵ ÇÑ´Ù. ¹®Á¦´Â ÀÌ·± ÇÁ·Î±×·¥µµ ¹®Á¦ ¾øÀÌ ÄÄÆÄÀÏÀÌ µÈ´Ù´Â °ÍÀÌ´Ù. °á±¹ ÇÁ·Î±×·¥ÀÌ ½ÇÇàÇÏ´Â µµÁß¿¡ ¹®Á¦¸¦ ÀÏÀ¸Å°°Ô µÉ °ÍÀÌ´Ù. ´ÙÇàÈ÷ gcc ÄÄÆÄÀÏ·¯´Â ÄÄÆÄÀÏ ¿É¼ÇÀ» ÅëÇØ¼ Àú·¯ÇÑ ¹®Á¦¸¦ »çÀü¿¡ Àâ¾Æ³¾ ¼ö ÀÖ°Ô Çϰí ÀÖ´Ù. À§ ÇÁ·Î±×·¥À» type.c·Î ÀúÀåÇÏ°í ¾Æ·¡¿Í °°Àº ¿É¼ÇÀ» ÁÖ°í ÄÄÆÄÀÏ ÇØº¸ÀÚ. # gcc -W -Wall -o type type.c ... type.c:7: warning: comparison between signed and unsigned ...comparison between signed and unsigned¿Í °°Àº °æ°í¸Þ½ÃÁö¸¦ Ãâ·ÂÇÔÀ» ¾Ë ¼ö ÀÖ´Ù. ÀÚ¼¼ÇÑ ³»¿ëÀº ¸®ÆÑÅ丵 : ¸ðµç °æ°í¸Þ½ÃÁö¸¦ Á¦°ÅÇÏ¶ó ¹®¼¸¦ Àо±â ¹Ù¶õ´Ù. ¾ÆÁ÷ Àб⠹ö°Ì´Ù¸é, ±×³É ´ëÃæ Àú·±°Ô ÀÖ³ªº¸´Ù ÇÏ´Â ¼öÁØ¿¡¼ ÀоîµÎ¾îµµ µµ¿òÀÌ µÉ °ÍÀÌ´Ù. 4 ¹®ÀÚ¿Í ¹®ÀÚ¿ Ç¥Çö
µ¥ÀÌÅÍ´Â Å©°Ô ¹®ÀÚ¿Í ¼ýÀÚ·Î ÀÌ·ç¾îÁ® ÀÖÀ½À» ¾Ë°í ÀÖ´Ù. ±×·±µ¥ Á¤ÀÛ ¹®ÀÚ¿Í ¹®ÀÚ¿À» Ç¥ÇöÇϱâ À§ÇÑ µ¥ÀÌÅÍ Å¸ÀÔÀ» ´Ù·é°Å °°Áö¸¦ ¾Ê´Ù. ÀÌ¿¡ ´ëÇØ¼ ¾ê±âÇØ º¸°íÀÚ ÇÑ´Ù.
C ¾ð¾î¿¡¼ ¹®ÀÚ¸¦ À§ÇÑ µ¥ÀÌÅÍ Å¸ÀÔÀ¸·Î´Â char µ¥ÀÌÅÍ Å¸ÀÔÀ» »ç¿ëÇÑ´Ù. char ´Â 1byte 256ÀÇ Å©±â¸¦ °¡Áö´Âµ¥, 1byte ¹®ÀÚ±ÇÀÇ ¿µ¾î¿Í ¼ö½Ê°³ÀÇ Æ¯¼ö¹®ÀÚ¸¦ ÃæºÐÈ÷ Ç¥ÇÑÇÒ ¼ö Àִ¹٠char¸¦ ¹®ÀÚ¸¦ ÀúÀåÇϱâ À§ÇÑ µ¥ÀÌÅÍ Å¸ÀÔÀ¸·Î »ç¿ëÇϰí ÀÖ´Ù.
ÄÄÇ»ÅÍ¿¡¼ Ç¥ÇöµÇ´Â ¹®ÀÚ´Â 0¿¡¼ 255±îÁöÀÇ °¢ Å©±â¿¡ ´ëÀÀµÇ´Â ¹®ÀÚµéÀÌ Ç¥ÁØÀ¸·Î Á¤ÀǵǾî ÀÖ´Ù. °¢ °ª¿¡ ´ëÀÀµÇ´Â ¹®ÀÚ´Â ASCII Å×À̺í·Î Á¤¸®µÇ¾î ÀÖ´Ù. ![]() ![]()
±×·¯³ª ASCII Å×ÀÌºí¸¸ °¡Áö°í´Â ÀϺ»¾î, ÇѱÛ, Áß±¹¾î¿Í °°Àº 2byte ¹®Àڴ ǥÇöÇÒ ¼ö ¾ø´Ù. 2byte ¹®ÀÚ´Â char¸¦ 2°³ ÀÌ»ó »ç¿ëÇØ¼ ÀúÀåÇØ¾ß ÇÑ´Ù.
ÀÌÁ¦ ¸¶Áö¸·À¸·Î ¹®ÀÚ¿ÀÌ ³²¾Ò´Ù. C´Â ¹®ÀÚ¿À» À§ÇÑ µ¥ÀÌÅÍ Å¸ÀÔÀ» °¡Áö°í ÀÖÁö ¾Ê´Ù. C¿¡¼ ¹®ÀÚ¿À» ó¸®Çϱâ À§Çؼ´Â ¹è¿À» »ç¿ëÇØ¾ß¸¸ ÇÑ´Ù. À̰ÍÀº ¿ø½Ã µ¥ÀÌÅÍ Å¸ÀÔÀ» ¿©·¯°³¸¦ Æ÷ÇÔÇϰí ÀÖ´Â µ¥ÀÌÅÍ ±¸Á¶´Ù. ¿¹¸¦ µé¾î ¹®ÀÚ¿Àº char¸¦ ¿©·¯°³ Æ÷ÇÔÇÒ ¼ö ÀÖ´Â µ¥ÀÌÅÍ ±¸Á¶¸¦ ÀÌ¿ëÇϸé Ç¥ÇöÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù. ¹è¿Àº ´ÙÀ½Àå¿¡¼ ÀÚ¼¼È÷ ´Ù·çµµ·Ï ÇϰڴÙ. 5 typedef ¸¦ ÀÌ¿ëÇÑ Å¸ÀÔ ÀçÁ¤ÀÇ
µ¥ÀÌÅÍ Å¸ÀÔÀº ŸÀÔ¿¡ ¸Â´Â °íÀ¯ÇÑ À̸§À» °¡Áö°í »ç¿ëÇÏ°Ô µÈ´Ù. ±×·±µ¥ ŸÀÔÀÇ À̸§ÀÌ ³Ê¹« ±æ °æ¿ì, À̸¦ ÀÌ¿ëÇØ¼ ÇÁ·Î±×·¥À» ÀÛ¼ºÇÒ °æ¿ì ºÒÆíÇÑ Á¡ÀÌ ¹ß»ýÇÑ´Ù. ´ÙÀ½ÀÇ °æ¿ì¸¦ º¸ÀÚ.
int main() { unsigned long int a; unsigned long int b; unsigned long long c; ... }»ç¿ëÇϴµ¥ ¹®Á¦´Â ¾ø°ÚÁö¸¸, Àú·¸°Ô ±ä ŸÀÔÀÇ º¯¼ö°¡ ¿©±âÀú±â¿¡ »ý¼ºµÈ´Ù¸é °¡µ¶¼ºÀÌ ¶³¾îÁö´Â ÁöÀúºÐÇÑ Äڵ尡 ¸¸µé¾îÁú °¡´É¼ºÀÌ ÀÖ´Ù. ÀÌ·²°æ¿ì typedef ¸¦ ÀÌ¿ëÇØ¼ ±âÁ¸ÀÇ µ¥ÀÌÅÍ Å¸ÀÔÀ» ´Ù¸¥ ªÀº À̸§À¸·Î ÀçÁ¤ÀÇ ÇØ¼ »ç¿ëÇÒ ¼ö ÀÖ´Ù. typedef´Â ´ÙÀ½°ú °°ÀÌ »ç¿ëÇÒ ¼ö ÀÖ´Ù. typedef [¿ø·¡ µ¥ÀÌÅÍ Çü] [ÀçÁ¤ÀÇµÉ µ¥ÀÌÅÍ Å¸ÀÔÀÇ À̸§]typedef¸¦ ÀÌ¿ëÇϸé, ´ÙÀ½°ú °°ÀÌ Äڵ带 ±ò²ûÇÏ°Ô ¸¸µé ¼ö ÀÖ´Ù. typedef unsigned long int uint; typedef unsigned long long ulint; int main() { uint a; uint b; ulint c; } 6 ¹®Á¦
|
|
|||||||||||||||||||||||||
|
EmailÀ» ±âÀÔÇϸé, ´ñ±ÛÀÌ ¸ÞÀÏ·Î Àü´ÞµË´Ï´Ù. |
|