Round 0 ¶
ë§Žì�´ 모ì�¼ê±°ë�¼ 예ìƒ�했는ë�° 6피ì—�서 ë‚´ë ¤ì˜¨ ê·¸ ì�¸ì›� 그대로ë�¼ 당황 ã…‹ã…‹
권순ì�˜ 형 만나서 ë°˜ê°€ì› ì–´ìš¬ã…‹ã…‹
모ì�´ìž�마ìž� ê°�ìž� í• ì�¼. 나는 ê³¼ì œ+ ë�™ì �í• ë‹¹ ì—°êµ¬í•˜ê³ íƒœì§„ì�´ëŠ” ë�í–ˆë�”ë�¼, 순ì�˜í˜•ì�´ëž‘ 종하형ì�€ 스타함 ã…‹ã…‹ã…‹
순�형 발림 ㅋㅋㅋ
권순ì�˜ 형 만나서 ë°˜ê°€ì› ì–´ìš¬ã…‹ã…‹
모ì�´ìž�마ìž� ê°�ìž� í• ì�¼. 나는 ê³¼ì œ+ ë�™ì �í• ë‹¹ ì—°êµ¬í•˜ê³ íƒœì§„ì�´ëŠ” ë�í–ˆë�”ë�¼, 순ì�˜í˜•ì�´ëž‘ 종하형ì�€ 스타함 ã…‹ã…‹ã…‹
순�형 발림 ㅋㅋㅋ
- 악ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ - 권순�
Round 1 ¶
지�� 누나 오셨다.
누님께 ë°°ì—´ê³¼ í�¬ì�¸í„°ì�˜ 기본, 주소ì—� ì�˜í•œ .. ë�ë�¼ê³ 해야하나 암튼. 근본ì �으로 ë°°ì—´ì�€ í�¬ì�¸í„°ì™€ ë�™ì�¼. ì�´ëŸ°ê²ƒì�„ ë°°ì› ë‹¤.
ê·¸ë¦¬ê³ malloc 쓰는법ì�„ 들었ì�Œ.
런타임ì—�러나서 물어본것ì�´ì˜€ëŠ”ë�° 오류 ì›�ì�¸ì�€ 설명ì�„ ë“£ê³ ë‚˜ì„œ ì�´í•´í–ˆì�Œ.
해결� 어쩌다보니 �었�ㅋ
누님께 ë°°ì—´ê³¼ í�¬ì�¸í„°ì�˜ 기본, 주소ì—� ì�˜í•œ .. ë�ë�¼ê³ 해야하나 암튼. 근본ì �으로 ë°°ì—´ì�€ í�¬ì�¸í„°ì™€ ë�™ì�¼. ì�´ëŸ°ê²ƒì�„ ë°°ì› ë‹¤.
ê·¸ë¦¬ê³ malloc 쓰는법ì�„ 들었ì�Œ.
런타임ì—�러나서 물어본것ì�´ì˜€ëŠ”ë�° 오류 ì›�ì�¸ì�€ 설명ì�„ ë“£ê³ ë‚˜ì„œ ì�´í•´í–ˆì�Œ.
해결� 어쩌다보니 �었�ㅋ
Round 1.5 ¶
진경� 등장
ì§„ê²½x 경진 대회 ê¸°ì¶œë¬¸ì œ 풀어줌.
우왕.
malloc 물어봤ë�”니 ì‰ì‰ 나옴.
ì—시 ì§„ê²½ì�´ìž„
ì§„ê²½x 경진 대회 ê¸°ì¶œë¬¸ì œ 풀어줌.
우왕.
malloc 물어봤ë�”니 ì‰ì‰ 나옴.
ì—시 ì§„ê²½ì�´ìž„
Round 2 ¶
ë§�í�¬ë“œ 리스트 ë°°ì› ì�Œ
ì�´ê²Œ 11학년ë�„ 수능 언어ì˜�ì—ì—� ì¶œì œë�˜ì—ˆë‹¤ë‹ˆ
난 기억� 없는�
하지만 난 ë§žì•˜ê² ì§€ 언어ì—�서 비문학ì�€ 하나ë�„ 안 í‹€ë ¸ì—ˆìœ¼ë‹ˆ!
순ì�˜í˜•ì�´ ì†Œê°œí•˜ê³ , 종하형ì�´ ê°œë…�설명 í•˜ê³ , ì§€ì›�ì�´ëˆ„나가 쓰는 법ì�„ 가르ì³� 주셨ì�Œ.
종하형ì�´ ë�”블 ë§�í�¬ë“œ 리스트ë�„ 하ìž�ê³ í–ˆëŠ”ë�° 시간관계ìƒ� 하지ë§�ìž�ê³ í•˜ì—¬ 기ê°�.
sortingì�´ëž‘ 스íƒ�í��? ì�¸ê°€ í•œë‹¤ê³ í–ˆì—ˆëŠ”ë�° ì�´ê²ƒë�„ ê²°êµ ì•ˆí•¨ ã…‹
ì�´ê²Œ 11학년ë�„ 수능 언어ì˜�ì—ì—� ì¶œì œë�˜ì—ˆë‹¤ë‹ˆ
난 기억� 없는�
하지만 난 ë§žì•˜ê² ì§€ 언어ì—�서 비문학ì�€ 하나ë�„ 안 í‹€ë ¸ì—ˆìœ¼ë‹ˆ!
순ì�˜í˜•ì�´ ì†Œê°œí•˜ê³ , 종하형ì�´ ê°œë…�설명 í•˜ê³ , ì§€ì›�ì�´ëˆ„나가 쓰는 법ì�„ 가르ì³� 주셨ì�Œ.
종하형ì�´ ë�”블 ë§�í�¬ë“œ 리스트ë�„ 하ìž�ê³ í–ˆëŠ”ë�° 시간관계ìƒ� 하지ë§�ìž�ê³ í•˜ì—¬ 기ê°�.
sortingì�´ëž‘ 스íƒ�í��? ì�¸ê°€ í•œë‹¤ê³ í–ˆì—ˆëŠ”ë�° ì�´ê²ƒë�„ ê²°êµ ì•ˆí•¨ ã…‹
Round 3 ¶
�혜 먹�
다�엔 볶�짬뽕시켜�야지,.
군대얘기나옴. 으아아아
ì§„ê²½ì�´ 안대ë�¼ê³ ìž�는척하면서 웃기는건 다 ë“£ê³ ì›ƒê³ ìžˆì—ˆì�Œã…‹
다들 치우기싫어서 다 ë¨¹ê³ ì„œ 한참ë�™ì•ˆ 시간ë�ˆê±´ 공공연한 진실.
다�엔 볶�짬뽕시켜�야지,.
군대얘기나옴. 으아아아
ì§„ê²½ì�´ 안대ë�¼ê³ ìž�는척하면서 웃기는건 다 ë“£ê³ ì›ƒê³ ìžˆì—ˆì�Œã…‹
다들 치우기싫어서 다 ë¨¹ê³ ì„œ 한참ë�™ì•ˆ 시간ë�ˆê±´ 공공연한 진실.
Round 4 ¶
Round 3ì•ˆê°”ë‹¤ê³ íƒœì§„ì�´ê°€ 그런다.
몰� �거 구분� 종하형� �한 그 �운드가 아니� 그냥 내가 ��하는 �운드임ㅇㄹㅇㄹㅇㄹ
몰� �거 구분� 종하형� �한 그 �운드가 아니� 그냥 내가 ��하는 �운드임ㅇㄹㅇㄹㅇㄹ
ìž ì�„ ì«“ìž�ê³ ì‹œìž‘í•œ 카트가 í•´ëœ¨ê³ í•´ì‚°í• ë•Œê¹Œì§€ ì�´ì–´ì§� 
막íŒ� ì—ì „ì�´ ë¹ˆë²ˆí–ˆê³ ë§‰ìž�ë�„ í�¥í•˜ê³ 그런 시간ì�´ì˜€ì�Œ.
난 카트가 없어서 한참ì�´ë‚˜ ã…œã… .

막íŒ� ì—ì „ì�´ ë¹ˆë²ˆí–ˆê³ ë§‰ìž�ë�„ í�¥í•˜ê³ 그런 시간ì�´ì˜€ì�Œ.
난 카트가 없어서 한참ì�´ë‚˜ ã…œã… .
ë°°ì—´ ¶
Round 0,1
ë°°ì—´ì�´ 근본ì �으로 í�¬ì�¸í„°ëž€ 것ì�€ ì�´ë¯¸ ì•Œê³ ìžˆì—ˆìœ¼ë‚˜ ì‹¤ì œ 컴파ì�¼ëŸ¬ì—�서 ì�´ëŸ°ì‹�으로 표현 ë�œë‹¤ëŠ” 것ì�„ ë°°ì› ë‹¤.
ex)
printf("%d",arr);
-> arr� 주소가 나온다.
-> ��터 연산�를 ��해서 표현하�면 &arr0� �다.
-> ��터 연산�를 ��해서 표현하�면 &arr0� �다.
ì‹¤ì œ 메모리ìƒ�ì—�서는 2ì°¨ì›�ì�´ë“ 3ì°¨ì›�ì�´ë“ 메모리ìƒ�ì—�서는 그냥 ì„ í˜•ìœ¼ë¡œ ì €ìž¥ë�œë‹¤.
사실 ì�´ê²ƒë�„ 새싹êµ�실때 ì�´ë¯¸ ë°°ì› ë�˜ ë‚´ìš©. ì›�í�¬í˜•.. ë³´ê³ ì‹¶ì–´ìš”.
사실 ì�´ê²ƒë�„ 새싹êµ�실때 ì�´ë¯¸ ë°°ì› ë�˜ ë‚´ìš©. ì›�í�¬í˜•.. ë³´ê³ ì‹¶ì–´ìš”.
í�¬ì�¸í„° ¶
Round 0,1
datatype* : í�¬ì�¸í„° ìž�료형 ì„ ì–¸ë²• -> ì�´ê²Œ ë�…ìž�ì �ì�¸ ìž�료형ì�´ë�¼ê³ ë´�ë�„ 무관.
*val_name : 해당 ��터변수가 가르키는 변수� 값� 참조
&val : &연산� 우측� 주소값� 불러온다.(�건 val�리� 들어가는 변수가 ��터 �료형� 아니여� �)
*val_name : 해당 ��터변수가 가르키는 변수� 값� 참조
&val : &연산� 우측� 주소값� 불러온다.(�건 val�리� 들어가는 변수가 ��터 �료형� 아니여� �)
í�¬ì�¸í„° 변수ì—� 주소값ì�´ ì €ìž¥ë�œë‹¤ê³ ìƒ�ê°�하는것보다. ê·¸ 주소ì—� 해당하는 변수를 ê°€ë¥´í‚¨ë‹¤ê³ ìƒ�ê°�하는게 옳다.
다중 í�¬ì�¸í„°ë�„ ë°°ì› ë‹¤.
구조체 ¶
Round 1
- ì„ ì–¸ë²•
1)
typedef struct name{
data...
data...
...
}nickname;
ì‚¬ìš©í• ë•� nicknameë§Œ ì�¨ì£¼ë©´ ë�œë‹¤.
2)
struct name{
date...
...
};
ì‚¬ìš©í• ë•Œë§ˆë‹¤ struct name ë�¼ê³ 해야한다.
3)
typedef struct{
data...
...
}nickname;
닉네임만 ì„ ì–¸í•˜ëŠ” 방법. 비표준ì�´ëž€ë‹¤.
- 개�
ì�˜ë¯¸ê°€ 통하는(?) ìœ ìš©í•œ (?) ë�°ì�´í„°ë“¤ì�„ 그룹화 í•œë‹¤ê³ ìƒ�ê°�하면 ë�œë‹¤.
ì�¼ë‹¨ í•´ë‘�ë©´ sortí• ë•Œ 매우 편하다 한가지만 sortí•´ë‘�ë©´ 나머지ë�„ ë”°ë�¼ì˜¤ë‹ˆê¹Œ!
ë§�í�¬ë“œ 리스트 ¶
ì�¼ë‹¨ ë˜í•˜ëŠ” 것 ì�¸ì§„ ì œëŒ€ë¡œ 알았다.
사용법ì�€ ìƒ�ê°�ì�´ 나질 않는다.. 사실 ì�´ë•Œ ì¡¸ë ¤ì„œ 한귀로 ë“£ê³ ê±°ì�˜ í�˜ë¦¼..
사용법ì�€ ìƒ�ê°�ì�´ 나질 않는다.. 사실 ì�´ë•Œ ì¡¸ë ¤ì„œ 한귀로 ë“£ê³ ê±°ì�˜ í�˜ë¦¼..
C언어ì—� ->ì�´ëŸ° ì—°ì‚°ìž�ê°€ 있다는건 알아냄.. ë”ê°€ ìƒ�당히 ì§�ê´€ì �ìž„.
ë§�í�¬ë“œ 리스트가ë�ëƒ�!
한 '노드'� �미가 있는 값과 다� 노드� 주소를 가르키는 ��터를 담는다.
다�노드는 그 다�노드를 가르킨다.
�게 계� 반복�다.
보통 ë��ì�€ Nullì�„ 가르키는 í�¬ì�¸í„°ê°€ì˜¨ë‹¤. 하지만 맨처ì�Œ 노드를 가르켜 순환형 리스트가 ë� 수 ë�„ 있다.
�방형성� 존재한다.
다�노드는 그 다�노드를 가르킨다.
�게 계� 반복�다.
보통 ë��ì�€ Nullì�„ 가르키는 í�¬ì�¸í„°ê°€ì˜¨ë‹¤. 하지만 맨처ì�Œ 노드를 가르켜 순환형 리스트가 ë� 수 ë�„ 있다.
�방형성� 존재한다.
메모리ìƒ�ì—� 나란히 ì„ ì–¸ë�˜ì–´ 주소값 간격ì�´ ì�¼ì •한 배열과는 달리
ë§�í�¬ë“œ 리스트는 규칙ì„�ì�´ 존재하지 않기 때문ì—� ê°’ì�„찾는ë�°ëŠ” 시간ì�´ ë§Žì�´ 걸리는 단ì �ì�´ìžˆë‹¤ë§Œ.
목ë¡�ì�˜ 중간ì—� 삽입,ì‚ì œê°€ 그냥 ë°°ì—´ì—� 비해 매우 편리하므로 ìž�주 사용ë�œë‹¤.
ë§�í�¬ë“œ 리스트는 규칙ì„�ì�´ 존재하지 않기 때문ì—� ê°’ì�„찾는ë�°ëŠ” 시간ì�´ ë§Žì�´ 걸리는 단ì �ì�´ìžˆë‹¤ë§Œ.
목ë¡�ì�˜ 중간ì—� 삽입,ì‚ì œê°€ 그냥 ë°°ì—´ì—� 비해 매우 편리하므로 ìž�주 사용ë�œë‹¤.
즉, 프로그래머는 íž˜ë“¤ê³ ì‚¬ìš©ìž�는 편하다는얘기...
하...
하...
ë�™ì � í• ë‹¹ ¶
<stdlib.h> ì�„ ì„ ì–¸í•œë‹¤.
그 뒤 malloc� 쓴다.
ex)
ì�´ëŒ€ë¡œ ë�¼ë©´ 변수가 10개짜리ì�¸ ë°°ì—´ì�„ heap ì„ ì–¸í•œê²ƒê³¼ 같다.
dia 10ì�´ëž‘ 다른ì �ì�€.. dia 10ì�€ stackì—� í• ë‹¹ë�œë‹¤ëŠ”ê²ƒì�´ 다른ì �ì�´ë‹¤.
ex)
float* dia =(float*)malloc(sizeof(float)*10);
10ì�€ 배열로 치면 dia 10ì�„한 ì…ˆì�´ ë�œë‹¤.ì�´ëŒ€ë¡œ ë�¼ë©´ 변수가 10개짜리ì�¸ ë°°ì—´ì�„ heap ì„ ì–¸í•œê²ƒê³¼ 같다.
dia 10ì�´ëž‘ 다른ì �ì�€.. dia 10ì�€ stackì—� í• ë‹¹ë�œë‹¤ëŠ”ê²ƒì�´ 다른ì �ì�´ë‹¤.
본래 ì�˜ë�„대로ë�¼ë©´ ë°°ì—´ì�´ '터지는'때를 ìº�치해서 realloc으로 ë°°ì—´ì�˜ 갯수를 ëŠ˜ë ¤ì£¼ë ¤ê³ í–ˆìœ¼ë‚˜
C언어ì—�서 int a 2={1,2} ì„ ì–¸í›„ printf("%d",a2); ê°™ì�€ 경우ë�„ 허용하므로 ì–¸ì œ 터지는지 알 수가 없었다..
그냥 10ê°œ ì§€ì •í•´ì£¼ì—ˆìœ¼ë‹ˆ ë‚´ê°€ 알아서 10개째ì�¼ë•Œ reallocì�„ ì�¨ì¤˜ì•¼ 했다.
암튼 그래서 횟수를 ì¸¡ì •í• int i;를 만들ê³
if(i%10==0)realloc(dia,sizeof(float)*10*k++);ì�´ë�¼ê³ 했다.
당연히 kë�„ ì„ ì–¸ë�œ 변수.
그랬�니 잘�아간다. 기분 좋다!
C언어ì—�서 int a 2={1,2} ì„ ì–¸í›„ printf("%d",a2); ê°™ì�€ 경우ë�„ 허용하므로 ì–¸ì œ 터지는지 알 수가 없었다..
그냥 10ê°œ ì§€ì •í•´ì£¼ì—ˆìœ¼ë‹ˆ ë‚´ê°€ 알아서 10개째ì�¼ë•Œ reallocì�„ ì�¨ì¤˜ì•¼ 했다.
암튼 그래서 횟수를 ì¸¡ì •í• int i;를 만들ê³
if(i%10==0)realloc(dia,sizeof(float)*10*k++);ì�´ë�¼ê³ 했다.
당연히 kë�„ ì„ ì–¸ë�œ 변수.
그랬�니 잘�아간다. 기분 좋다!
- ì§„ê²½ì�´ê°€ ë§�하길 ì�´ê±´ 사람입장ì—�ì„ ì“°ê¸° ì°¸ 편하지만 비효율ì �ì�´ë�¼ê³ 한다.
많� 경우� 매모리를 복사해야하니까.
그러니까 ì• ì´ˆì—� heapì—� ì—„ì²í�° 공간ì�„ í• ë‹¹í•˜ê³ , 버í�¼ë¥¼ 통해 ê°’ì�„ ìž„ì‹œì €ìž¥í•œë’¤, 다차면 í�°ê³µê°„으로 ì˜®ê¸°ê³ ìž…ë ¥ì�´ ë��나면 reallocì�„ 통해 í�°ê³µê°„ì�„ 알맞게 줄여주는 그런것ì�´ ë�” ì¢‹ë‹¤ê³ í•˜ëŠ”ë�° 난 ìž˜ëª¨ë¥´ê² ë‹¼










