모바일 오유 바로가기
http://m.todayhumor.co.kr
분류 게시판
베스트
  • 베스트오브베스트
  • 베스트
  • 오늘의베스트
  • 유머
  • 유머자료
  • 유머글
  • 이야기
  • 자유
  • 고민
  • 연애
  • 결혼생활
  • 좋은글
  • 자랑
  • 공포
  • 멘붕
  • 사이다
  • 군대
  • 밀리터리
  • 미스터리
  • 술한잔
  • 오늘있잖아요
  • 투표인증
  • 새해
  • 이슈
  • 시사
  • 시사아카이브
  • 사회면
  • 사건사고
  • 생활
  • 패션
  • 패션착샷
  • 아동패션착샷
  • 뷰티
  • 인테리어
  • DIY
  • 요리
  • 커피&차
  • 육아
  • 법률
  • 동물
  • 지식
  • 취업정보
  • 식물
  • 다이어트
  • 의료
  • 영어
  • 맛집
  • 추천사이트
  • 해외직구
  • 취미
  • 사진
  • 사진강좌
  • 카메라
  • 만화
  • 애니메이션
  • 포니
  • 자전거
  • 자동차
  • 여행
  • 바이크
  • 민물낚시
  • 바다낚시
  • 장난감
  • 그림판
  • 학술
  • 경제
  • 역사
  • 예술
  • 과학
  • 철학
  • 심리학
  • 방송연예
  • 연예
  • 음악
  • 음악찾기
  • 악기
  • 음향기기
  • 영화
  • 다큐멘터리
  • 국내드라마
  • 해외드라마
  • 예능
  • 팟케스트
  • 방송프로그램
  • 무한도전
  • 더지니어스
  • 개그콘서트
  • 런닝맨
  • 나가수
  • 디지털
  • 컴퓨터
  • 프로그래머
  • IT
  • 안티바이러스
  • 애플
  • 안드로이드
  • 스마트폰
  • 윈도우폰
  • 심비안
  • 스포츠
  • 스포츠
  • 축구
  • 야구
  • 농구
  • 바둑
  • 야구팀
  • 삼성
  • 두산
  • NC
  • 넥센
  • 한화
  • SK
  • 기아
  • 롯데
  • LG
  • KT
  • 메이저리그
  • 일본프로야구리그
  • 게임1
  • 플래시게임
  • 게임토론방
  • 엑스박스
  • 플레이스테이션
  • 닌텐도
  • 모바일게임
  • 게임2
  • 던전앤파이터
  • 마비노기
  • 마비노기영웅전
  • 하스스톤
  • 히어로즈오브더스톰
  • gta5
  • 디아블로
  • 디아블로2
  • 피파온라인2
  • 피파온라인3
  • 워크래프트
  • 월드오브워크래프트
  • 밀리언아서
  • 월드오브탱크
  • 블레이드앤소울
  • 검은사막
  • 스타크래프트
  • 스타크래프트2
  • 베틀필드3
  • 마인크래프트
  • 데이즈
  • 문명
  • 서든어택
  • 테라
  • 아이온
  • 심시티5
  • 프리스타일풋볼
  • 스페셜포스
  • 사이퍼즈
  • 도타2
  • 메이플스토리1
  • 메이플스토리2
  • 오버워치
  • 오버워치그룹모집
  • 포켓몬고
  • 파이널판타지14
  • 배틀그라운드
  • 기타
  • 종교
  • 단어장
  • 자료창고
  • 운영
  • 공지사항
  • 오유운영
  • 게시판신청
  • 보류
  • 임시게시판
  • 메르스
  • 세월호
  • 원전사고
  • 2016리오올림픽
  • 2018평창올림픽
  • 코로나19
  • 2020도쿄올림픽
  • 게시판찾기
  • 오유인페이지
    개인차단 상태
    천이랑님의
    개인페이지입니다
    가입 : 12-11-19
    방문 : 1836회
    닉네임변경 이력
    회원차단
    회원차단해제
    게시물ID : programmer_9613
    작성자 : 천이랑
    추천 : 0
    조회수 : 6833
    IP : 223.32.***.168
    댓글 : 11개
    등록시간 : 2015/04/29 11:44:13
    http://todayhumor.com/?programmer_9613 모바일
    [C] 자료구조 라인에디터를 만들고 있습니다. 도움 부탁드려요!
    옵션
    • 베스트금지
    • 본인삭제금지
    C언어로 자료구조를 배우고 있습니다. <div><br></div> <div>배우고 있는 책에 리스트ADT를 이용한 라인 에디터 코드가 있어 이를 단순 연결리스트가 아닌 이중 연결리스트로 구현해 보려고 시도했는데요,</div> <div><br></div> <div>간단히 insert_node와 add함수만 잠깐 수정해주면 될 줄 알았더니 0번 라인에 입력하니 프로그램이 종료되는 현상이 발생하네요.. 아마 수정한 코드에서 오류가 발생한 것이 아닐까 한데 문제는 이 수정한 코드들도 책 안에 있는 코드를 따온 것이란 겁니다.. 어디가 잘못된건지 감이 안잡히네요 ㅠㅠ</div> <div><br></div> <div>제가 한 작업은 단순히 ListNode구조체에 link대신 llink와 rlink로 포인터를 부여하였고, insert_node함수를 단순 연결리스트의 함수가 아닌 이중 연결리스트의 삽입 함수로 변경한 것이 다입니다. <span class="Apple-tab-span" style="white-space:pre;"> </span>디버깅을 해보니 46번째줄 코드에서 에러가 나오네요..</div> <div><br></div> <div>0번에 입력할때는 프로그램이 종료되고, 1번이나 2번 다른 라인에 입력할때는 오류가 출력되는 대신 아무것도 저장되질 않습니다.. 대체 뭘 수정해야 정상적으로 작동할까요? 도움이 절실합니다!</div> <div><br></div> <div><div class="colorscripter-code" style="color:#f0f0f0;overflow:auto;font-family:Consolas, 'Liberation Mono', Menlo, Courier, monospace;"> <table class="colorscripter-code-table" style="margin:0px;padding:0px;border:none;background-color:#272727;" cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:6px;border-right-width:2px;border-right-style:solid;border-right-color:#4f4f4f;"> <div style="margin:0px;padding:0px;text-align:right;color:#aaaaaa;line-height:130%;"> <div style="line-height:130%;">1</div> <div style="line-height:130%;">2</div> <div style="line-height:130%;">3</div> <div style="line-height:130%;">4</div> <div style="line-height:130%;">5</div> <div style="line-height:130%;">6</div> <div style="line-height:130%;">7</div> <div style="line-height:130%;">8</div> <div style="line-height:130%;">9</div> <div style="line-height:130%;">10</div> <div style="line-height:130%;">11</div> <div style="line-height:130%;">12</div> <div style="line-height:130%;">13</div> <div style="line-height:130%;">14</div> <div style="line-height:130%;">15</div> <div style="line-height:130%;">16</div> <div style="line-height:130%;">17</div> <div style="line-height:130%;">18</div> <div style="line-height:130%;">19</div> <div style="line-height:130%;">20</div> <div style="line-height:130%;">21</div> <div style="line-height:130%;">22</div> <div style="line-height:130%;">23</div> <div style="line-height:130%;">24</div> <div style="line-height:130%;">25</div> <div style="line-height:130%;">26</div> <div style="line-height:130%;">27</div> <div style="line-height:130%;">28</div> <div style="line-height:130%;">29</div> <div style="line-height:130%;">30</div> <div style="line-height:130%;">31</div> <div style="line-height:130%;">32</div> <div style="line-height:130%;">33</div> <div style="line-height:130%;">34</div> <div style="line-height:130%;">35</div> <div style="line-height:130%;">36</div> <div style="line-height:130%;">37</div> <div style="line-height:130%;">38</div> <div style="line-height:130%;">39</div> <div style="line-height:130%;">40</div> <div style="line-height:130%;">41</div> <div style="line-height:130%;">42</div> <div style="line-height:130%;">43</div> <div style="line-height:130%;">44</div> <div style="line-height:130%;">45</div> <div style="line-height:130%;">46</div> <div style="line-height:130%;">47</div> <div style="line-height:130%;">48</div> <div style="line-height:130%;">49</div> <div style="line-height:130%;">50</div> <div style="line-height:130%;">51</div> <div style="line-height:130%;">52</div> <div style="line-height:130%;">53</div> <div style="line-height:130%;">54</div> <div style="line-height:130%;">55</div> <div style="line-height:130%;">56</div> <div style="line-height:130%;">57</div> <div style="line-height:130%;">58</div> <div style="line-height:130%;">59</div> <div style="line-height:130%;">60</div> <div style="line-height:130%;">61</div> <div style="line-height:130%;">62</div> <div style="line-height:130%;">63</div> <div style="line-height:130%;">64</div> <div style="line-height:130%;">65</div> <div style="line-height:130%;">66</div> <div style="line-height:130%;">67</div> <div style="line-height:130%;">68</div> <div style="line-height:130%;">69</div> <div style="line-height:130%;">70</div> <div style="line-height:130%;">71</div> <div style="line-height:130%;">72</div> <div style="line-height:130%;">73</div> <div style="line-height:130%;">74</div> <div style="line-height:130%;">75</div> <div style="line-height:130%;">76</div> <div style="line-height:130%;">77</div> <div style="line-height:130%;">78</div> <div style="line-height:130%;">79</div> <div style="line-height:130%;">80</div> <div style="line-height:130%;">81</div> <div style="line-height:130%;">82</div> <div style="line-height:130%;">83</div> <div style="line-height:130%;">84</div> <div style="line-height:130%;">85</div> <div style="line-height:130%;">86</div> <div style="line-height:130%;">87</div> <div style="line-height:130%;">88</div> <div style="line-height:130%;">89</div> <div style="line-height:130%;">90</div> <div style="line-height:130%;">91</div> <div style="line-height:130%;">92</div> <div style="line-height:130%;">93</div> <div style="line-height:130%;">94</div> <div style="line-height:130%;">95</div> <div style="line-height:130%;">96</div> <div style="line-height:130%;">97</div> <div style="line-height:130%;">98</div> <div style="line-height:130%;">99</div> <div style="line-height:130%;">100</div> <div style="line-height:130%;">101</div> <div style="line-height:130%;">102</div> <div style="line-height:130%;">103</div> <div style="line-height:130%;">104</div> <div style="line-height:130%;">105</div> <div style="line-height:130%;">106</div> <div style="line-height:130%;">107</div> <div style="line-height:130%;">108</div> <div style="line-height:130%;">109</div> <div style="line-height:130%;">110</div> <div style="line-height:130%;">111</div> <div style="line-height:130%;">112</div> <div style="line-height:130%;">113</div> <div style="line-height:130%;">114</div> <div style="line-height:130%;">115</div> <div style="line-height:130%;">116</div> <div style="line-height:130%;">117</div> <div style="line-height:130%;">118</div> <div style="line-height:130%;">119</div> <div style="line-height:130%;">120</div> <div style="line-height:130%;">121</div> <div style="line-height:130%;">122</div> <div style="line-height:130%;">123</div> <div style="line-height:130%;">124</div> <div style="line-height:130%;">125</div> <div style="line-height:130%;">126</div> <div style="line-height:130%;">127</div> <div style="line-height:130%;">128</div> <div style="line-height:130%;">129</div> <div style="line-height:130%;">130</div> <div style="line-height:130%;">131</div> <div style="line-height:130%;">132</div> <div style="line-height:130%;">133</div> <div style="line-height:130%;">134</div> <div style="line-height:130%;">135</div> <div style="line-height:130%;">136</div> <div style="line-height:130%;">137</div> <div style="line-height:130%;">138</div> <div style="line-height:130%;">139</div> <div style="line-height:130%;">140</div> <div style="line-height:130%;">141</div> <div style="line-height:130%;">142</div> <div style="line-height:130%;">143</div> <div style="line-height:130%;">144</div> <div style="line-height:130%;">145</div> <div style="line-height:130%;">146</div> <div style="line-height:130%;">147</div> <div style="line-height:130%;">148</div> <div style="line-height:130%;">149</div> <div style="line-height:130%;">150</div> <div style="line-height:130%;">151</div> <div style="line-height:130%;">152</div> <div style="line-height:130%;">153</div> <div style="line-height:130%;">154</div> <div style="line-height:130%;">155</div> <div style="line-height:130%;">156</div> <div style="line-height:130%;">157</div> <div style="line-height:130%;">158</div> <div style="line-height:130%;">159</div> <div style="line-height:130%;">160</div> <div style="line-height:130%;">161</div> <div style="line-height:130%;">162</div> <div style="line-height:130%;">163</div> <div style="line-height:130%;">164</div> <div style="line-height:130%;">165</div> <div style="line-height:130%;">166</div> <div style="line-height:130%;">167</div> <div style="line-height:130%;">168</div> <div style="line-height:130%;">169</div> <div style="line-height:130%;">170</div> <div style="line-height:130%;">171</div> <div style="line-height:130%;">172</div> <div style="line-height:130%;">173</div> <div style="line-height:130%;">174</div> <div style="line-height:130%;">175</div> <div style="line-height:130%;">176</div> <div style="line-height:130%;">177</div> <div style="line-height:130%;">178</div> <div style="line-height:130%;">179</div> <div style="line-height:130%;">180</div> <div style="line-height:130%;">181</div> <div style="line-height:130%;">182</div> <div style="line-height:130%;">183</div> <div style="line-height:130%;">184</div> <div style="line-height:130%;">185</div> <div style="line-height:130%;">186</div> <div style="line-height:130%;">187</div> <div style="line-height:130%;">188</div> <div style="line-height:130%;">189</div> <div style="line-height:130%;">190</div> <div style="line-height:130%;">191</div> <div style="line-height:130%;">192</div> <div style="line-height:130%;">193</div> <div style="line-height:130%;">194</div> <div style="line-height:130%;">195</div> <div style="line-height:130%;">196</div> <div style="line-height:130%;">197</div> <div style="line-height:130%;">198</div> <div style="line-height:130%;">199</div> <div style="line-height:130%;">200</div> <div style="line-height:130%;">201</div> <div style="line-height:130%;">202</div> <div style="line-height:130%;">203</div> <div style="line-height:130%;">204</div> <div style="line-height:130%;">205</div> <div style="line-height:130%;">206</div> <div style="line-height:130%;">207</div> <div style="line-height:130%;">208</div> <div style="line-height:130%;">209</div> <div style="line-height:130%;">210</div> <div style="line-height:130%;">211</div> <div style="line-height:130%;">212</div> <div style="line-height:130%;">213</div> <div style="line-height:130%;">214</div> <div style="line-height:130%;">215</div> <div style="line-height:130%;">216</div> <div style="line-height:130%;">217</div> <div style="line-height:130%;">218</div> <div style="line-height:130%;">219</div> <div style="line-height:130%;">220</div> <div style="line-height:130%;">221</div> <div style="line-height:130%;">222</div> <div style="line-height:130%;">223</div> <div style="line-height:130%;">224</div> <div style="line-height:130%;">225</div> <div style="line-height:130%;">226</div> <div style="line-height:130%;">227</div> <div style="line-height:130%;">228</div> <div style="line-height:130%;">229</div> <div style="line-height:130%;">230</div> <div style="line-height:130%;">231</div> <div style="line-height:130%;">232</div> <div style="line-height:130%;">233</div> <div style="line-height:130%;">234</div> <div style="line-height:130%;">235</div> <div style="line-height:130%;">236</div> <div style="line-height:130%;">237</div> <div style="line-height:130%;">238</div> <div style="line-height:130%;">239</div> <div style="line-height:130%;">240</div> <div style="line-height:130%;">241</div> <div style="line-height:130%;">242</div> <div style="line-height:130%;">243</div> <div style="line-height:130%;">244</div> <div style="line-height:130%;">245</div> <div style="line-height:130%;">246</div> <div style="line-height:130%;">247</div> <div style="line-height:130%;">248</div> <div style="line-height:130%;">249</div> <div style="line-height:130%;">250</div> <div style="line-height:130%;">251</div> <div style="line-height:130%;">252</div> <div style="line-height:130%;">253</div> <div style="line-height:130%;">254</div> <div style="line-height:130%;">255</div> <div style="line-height:130%;">256</div> <div style="line-height:130%;">257</div> <div style="line-height:130%;">258</div> <div style="line-height:130%;">259</div> <div style="line-height:130%;">260</div> <div style="line-height:130%;">261</div> <div style="line-height:130%;">262</div> <div style="line-height:130%;">263</div> <div style="line-height:130%;">264</div> <div style="line-height:130%;">265</div> <div style="line-height:130%;">266</div> <div style="line-height:130%;">267</div> <div style="line-height:130%;">268</div> <div style="line-height:130%;">269</div></div></td> <td style="padding:6px 0px;"> <div style="margin:0px;padding:0px;color:#f0f0f0;line-height:130%;"> <div style="padding:0px 6px;white-space:pre;line-height:130%;"><span style="color:#0086b3;">#include</span> <span style="color:#ff3399;"><</span>stdio.h<span style="color:#ff3399;">></span></div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"><span style="color:#0086b3;">#include</span> <span style="color:#ff3399;"><</span>stdlib.h<span style="color:#ff3399;">></span></div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"><span style="color:#0086b3;">#include</span> <span style="color:#ff3399;"><</span>ctype.h<span style="color:#ff3399;">></span></div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"><span style="color:#0086b3;">#include</span> <span style="color:#ff3399;"><</span>string.h<span style="color:#ff3399;">></span></div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"><span style="color:#0086b3;">#include</span> <span style="color:#ff3399;"><</span>limits.h<span style="color:#ff3399;">></span></div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"><span style="color:#0086b3;">#include</span> <span style="color:#ff3399;"><</span>malloc.h<span style="color:#ff3399;">></span></div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"> </div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"> </div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"><span style="color:#0086b3;">#define</span> MAX_CHAR_PER_LINE <span style="color:#c10aff;">1000</span></div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"><span style="color:#0086b3;">#define</span> MAX_NAME <span style="color:#c10aff;">256</span></div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"><span style="color:#ff3399;">void</span> warning(<span style="color:#4be6fa;">char</span> <span style="color:#ff3399;">*</span>);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"><span style="color:#ff3399;">void</span> error(<span style="color:#4be6fa;">char</span> <span style="color:#ff3399;">*</span>);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"> </div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"><span style="color:#0086b3;">#define</span> FALSE <span style="color:#c10aff;">0</span></div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"><span style="color:#0086b3;">#define</span> TRUE <span style="color:#c10aff;">1</span></div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"> </div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"><span style="color:#ff3399;">typedef</span> <span style="color:#ff3399;">struct</span>{</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#4be6fa;">char</span> a[MAX_CHAR_PER_LINE];</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">} element;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"> </div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"><span style="color:#ff3399;">typedef</span> <span style="color:#ff3399;">struct</span> ListNode{</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    element data;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#ff3399;">struct</span> ListNode <span style="color:#ff3399;">*</span>llink;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#ff3399;">struct</span> ListNode <span style="color:#ff3399;">*</span>rlink;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">} ListNode;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"> </div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"><span style="color:#ff3399;">typedef</span> <span style="color:#ff3399;">struct</span>{</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    ListNode <span style="color:#ff3399;">*</span>head;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#4be6fa;">int</span> length;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">} LinkedListType;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"> </div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"><span style="color:#ff3399;">void</span> init(LinkedListType <span style="color:#ff3399;">*</span>list) <span style="color:#999999;">// List의 초기화</span></div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">{</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#ff3399;">if</span>(list<span style="color:#ff3399;">=</span><span style="color:#ff3399;">=</span>NULL) <span style="color:#ff3399;">return</span>;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    list<span style="color:#ff3399;">-</span><span style="color:#ff3399;">></span>length<span style="color:#ff3399;">=</span><span style="color:#c10aff;">0</span>;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    list<span style="color:#ff3399;">-</span><span style="color:#ff3399;">></span>head<span style="color:#ff3399;">=</span>NULL;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">}</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"> </div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"><span style="color:#ff3399;">void</span> insert_node(ListNode <span style="color:#ff3399;">*</span>before, ListNode <span style="color:#ff3399;">*</span>new_node)</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">{</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    new_node<span style="color:#ff3399;">-</span><span style="color:#ff3399;">></span>llink<span style="color:#ff3399;">=</span>before;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    new_node<span style="color:#ff3399;">-</span><span style="color:#ff3399;">></span>rlink<span style="color:#ff3399;">=</span>before<span style="color:#ff3399;">-</span><span style="color:#ff3399;">></span>rlink;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    before<span style="color:#ff3399;">-</span><span style="color:#ff3399;">></span>rlink<span style="color:#ff3399;">-</span><span style="color:#ff3399;">></span>llink<span style="color:#ff3399;">=</span>new_node;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    before<span style="color:#ff3399;">-</span><span style="color:#ff3399;">></span>rlink<span style="color:#ff3399;">=</span>new_node;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">}</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"> </div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"><span style="color:#ff3399;">void</span> remove_node(ListNode <span style="color:#ff3399;">*</span>phead_node, ListNode <span style="color:#ff3399;">*</span>removed)</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">{</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#ff3399;">if</span>(removed<span style="color:#ff3399;">=</span><span style="color:#ff3399;">=</span>phead_node) <span style="color:#ff3399;">return</span>;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    removed<span style="color:#ff3399;">-</span><span style="color:#ff3399;">></span>llink<span style="color:#ff3399;">-</span><span style="color:#ff3399;">></span>rlink<span style="color:#ff3399;">=</span>removed<span style="color:#ff3399;">-</span><span style="color:#ff3399;">></span>rlink;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    removed<span style="color:#ff3399;">-</span><span style="color:#ff3399;">></span>rlink<span style="color:#ff3399;">-</span><span style="color:#ff3399;">></span>llink<span style="color:#ff3399;">=</span>removed<span style="color:#ff3399;">-</span><span style="color:#ff3399;">></span>llink;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    free(removed);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">}</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"> </div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">ListNode <span style="color:#ff3399;">*</span>get_node_at(LinkedListType <span style="color:#ff3399;">*</span>list, <span style="color:#4be6fa;">int</span> pos)</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">{</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#4be6fa;">int</span> i;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    ListNode <span style="color:#ff3399;">*</span>tmp_node<span style="color:#ff3399;">=</span>list<span style="color:#ff3399;">-</span><span style="color:#ff3399;">></span>head;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#ff3399;">if</span>(pos<span style="color:#ff3399;"><</span><span style="color:#c10aff;">0</span>) <span style="color:#ff3399;">return</span> NULL;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#ff3399;">for</span>(i<span style="color:#ff3399;">=</span><span style="color:#c10aff;">0</span>;i<span style="color:#ff3399;"><</span>pos;i<span style="color:#ff3399;">+</span><span style="color:#ff3399;">+</span>) tmp_node<span style="color:#ff3399;">=</span>tmp_node<span style="color:#ff3399;">-</span><span style="color:#ff3399;">></span>rlink;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#ff3399;">return</span> tmp_node;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">}</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"> </div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"><span style="color:#4be6fa;">int</span> get_length(LinkedListType <span style="color:#ff3399;">*</span>list){</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#ff3399;">return</span> list<span style="color:#ff3399;">-</span><span style="color:#ff3399;">></span>length;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">}</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"> </div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"><span style="color:#ff3399;">void</span> add(LinkedListType <span style="color:#ff3399;">*</span>list, <span style="color:#4be6fa;">int</span> position, element data)</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">{</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    ListNode <span style="color:#ff3399;">*</span>p;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#ff3399;">if</span>((position<span style="color:#ff3399;">></span><span style="color:#ff3399;">=</span><span style="color:#c10aff;">0</span>)&&(position<span style="color:#ff3399;"><</span><span style="color:#ff3399;">=</span>list<span style="color:#ff3399;">-</span><span style="color:#ff3399;">></span>length)){</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">        ListNode <span style="color:#ff3399;">*</span>node<span style="color:#ff3399;">=</span>(ListNode <span style="color:#ff3399;">*</span>)malloc(<span style="color:#ff3399;">sizeof</span>(ListNode));</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">        <span style="color:#ff3399;">if</span>(node<span style="color:#ff3399;">=</span><span style="color:#ff3399;">=</span>NULL) error(<span style="color:#ffd500;">"Memory Allocate ERROR!"</span>);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">        node<span style="color:#ff3399;">-</span><span style="color:#ff3399;">></span>data<span style="color:#ff3399;">=</span>data;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">        p<span style="color:#ff3399;">=</span>get_node_at(list, position<span style="color:#ff3399;">-</span><span style="color:#c10aff;">1</span>);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">        insert_node(p, node);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">        list<span style="color:#ff3399;">-</span><span style="color:#ff3399;">></span>length<span style="color:#ff3399;">+</span><span style="color:#ff3399;">+</span>;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    }</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">}</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"> </div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"><span style="color:#ff3399;">void</span> add_last(LinkedListType <span style="color:#ff3399;">*</span>list, element data)</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">{</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    add(list,get_length(list),data);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">}</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"> </div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"><span style="color:#ff3399;">void</span> add_first(LinkedListType <span style="color:#ff3399;">*</span>list, element data)</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">{</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    add(list, <span style="color:#c10aff;">0</span>, data);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">}</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"> </div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"><span style="color:#4be6fa;">int</span> is_empty(LinkedListType <span style="color:#ff3399;">*</span>list)</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">{</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#ff3399;">if</span>(list<span style="color:#ff3399;">-</span><span style="color:#ff3399;">></span>head<span style="color:#ff3399;">=</span><span style="color:#ff3399;">=</span>NULL) <span style="color:#ff3399;">return</span> <span style="color:#c10aff;">1</span>;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#ff3399;">else</span> <span style="color:#ff3399;">return</span> <span style="color:#c10aff;">0</span>;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">}</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"> </div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"><span style="color:#ff3399;">void</span> <span style="color:#ff3399;">delete</span>(LinkedListType <span style="color:#ff3399;">*</span>list, <span style="color:#4be6fa;">int</span> pos)</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">{</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#ff3399;">if</span>(<span style="color:#ff3399;">!</span>is_empty(list)&&(pos<span style="color:#ff3399;">></span><span style="color:#ff3399;">=</span><span style="color:#c10aff;">0</span>)&&(pos<span style="color:#ff3399;"><</span>list<span style="color:#ff3399;">-</span><span style="color:#ff3399;">></span>length)){</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">        ListNode <span style="color:#ff3399;">*</span>p<span style="color:#ff3399;">=</span>get_node_at(list, pos<span style="color:#ff3399;">-</span><span style="color:#c10aff;">1</span>);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">        remove_node(p,(p<span style="color:#ff3399;">!</span><span style="color:#ff3399;">=</span>NULL)?p<span style="color:#ff3399;">-</span><span style="color:#ff3399;">></span>rlink:NULL);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">        list<span style="color:#ff3399;">-</span><span style="color:#ff3399;">></span>length<span style="color:#ff3399;">-</span><span style="color:#ff3399;">-</span>;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    }</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">}</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"> </div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">element get_entry(LinkedListType <span style="color:#ff3399;">*</span>list, <span style="color:#4be6fa;">int</span> pos) <span style="color:#999999;">// 주어진 위치에 해당하는 데이터 반환 </span></div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">{</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    ListNode <span style="color:#ff3399;">*</span>p;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#ff3399;">if</span>(pos<span style="color:#ff3399;">></span><span style="color:#ff3399;">=</span>list<span style="color:#ff3399;">-</span><span style="color:#ff3399;">></span>length) error(<span style="color:#ffd500;">"Pos ERROR!"</span>);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    p<span style="color:#ff3399;">=</span>get_node_at(list, pos);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#ff3399;">return</span> p<span style="color:#ff3399;">-</span><span style="color:#ff3399;">></span>data;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">}</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"> </div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"><span style="color:#ff3399;">void</span> clear(LinkedListType <span style="color:#ff3399;">*</span>list) <span style="color:#999999;">// 모든 노드를 삭제 </span></div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">{</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#4be6fa;">int</span> i;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#ff3399;">for</span>(i<span style="color:#ff3399;">=</span><span style="color:#c10aff;">0</span>;i<span style="color:#ff3399;"><</span>list<span style="color:#ff3399;">-</span><span style="color:#ff3399;">></span>length;i<span style="color:#ff3399;">+</span><span style="color:#ff3399;">+</span>)</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">        <span style="color:#ff3399;">delete</span>(list, i);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">}</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"> </div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"><span style="color:#ff3399;">void</span> display(LinkedListType <span style="color:#ff3399;">*</span>buffer) <span style="color:#999999;">// buffer의 내용 출력 </span></div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">{</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#4be6fa;">int</span> i;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    ListNode <span style="color:#ff3399;">*</span>tmp_node;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    tmp_node<span style="color:#ff3399;">=</span>buffer<span style="color:#ff3399;">-</span><span style="color:#ff3399;">></span>head;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    </div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#4be6fa;">printf</span>(<span style="color:#ffd500;">"********************\n"</span>);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#ff3399;">for</span>(i<span style="color:#ff3399;">=</span><span style="color:#c10aff;">0</span>;i<span style="color:#ff3399;"><</span>buffer<span style="color:#ff3399;">-</span><span style="color:#ff3399;">></span>length;i<span style="color:#ff3399;">+</span><span style="color:#ff3399;">+</span>){</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">        <span style="color:#4be6fa;">printf</span>(<span style="color:#ffd500;">"%s"</span>, tmp_node<span style="color:#ff3399;">-</span><span style="color:#ff3399;">></span>data.a);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">        tmp_node<span style="color:#ff3399;">=</span>tmp_node<span style="color:#ff3399;">-</span><span style="color:#ff3399;">></span>rlink;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    }</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#4be6fa;">printf</span>(<span style="color:#ffd500;">"********************\n"</span>);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">}</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"> </div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"><span style="color:#ff3399;">void</span> warning(<span style="color:#4be6fa;">char</span> <span style="color:#ff3399;">*</span>message) <span style="color:#999999;">// 경고 메세지 출력</span></div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">{</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    fprintf(stderr, <span style="color:#ffd500;">"%s\n"</span>, message);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">}</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"> </div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"><span style="color:#ff3399;">void</span> error(<span style="color:#4be6fa;">char</span> <span style="color:#ff3399;">*</span>message) <span style="color:#999999;">// 에러 메세지 출력</span></div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">{</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    fprintf(stderr, <span style="color:#ffd500;">"%s\n"</span>, message);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    exit(<span style="color:#c10aff;">1</span>);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">}</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"> </div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"><span style="color:#ff3399;">void</span> help() <span style="color:#999999;">// 메뉴 출력</span></div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">{</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#4be6fa;">printf</span>(<span style="color:#ffd500;">"********************\n"</span>);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#4be6fa;">printf</span>(<span style="color:#ffd500;">"i: INSERT\n"</span>);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#4be6fa;">printf</span>(<span style="color:#ffd500;">"d: DELETE\n"</span>);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#4be6fa;">printf</span>(<span style="color:#ffd500;">"r: READ FILE\n"</span>);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#4be6fa;">printf</span>(<span style="color:#ffd500;">"w: WRITE FILE\n"</span>);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#4be6fa;">printf</span>(<span style="color:#ffd500;">"q: QUIT\n"</span>);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#4be6fa;">printf</span>(<span style="color:#ffd500;">"********************\n"</span>);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">}</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"> </div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"><span style="color:#ff3399;">void</span> read_file(LinkedListType <span style="color:#ff3399;">*</span>buffer) <span style="color:#999999;">// disk file로부터 data를 읽음</span></div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">{</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#4be6fa;">char</span> fname[MAX_NAME];</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    FILE <span style="color:#ff3399;">*</span>fd;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    element p;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    </div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#ff3399;">if</span>(<span style="color:#ff3399;">!</span>is_empty(buffer)){</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">        clear(buffer);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    }</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    init(buffer);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    </div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#4be6fa;">printf</span>(<span style="color:#ffd500;">"FILE NAME: "</span>);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#4be6fa;">scanf</span>(<span style="color:#ffd500;">"%s"</span>, fname);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#ff3399;">if</span>((fd<span style="color:#ff3399;">=</span>fopen(fname,<span style="color:#ffd500;">"r"</span>))<span style="color:#ff3399;">=</span><span style="color:#ff3399;">=</span>NULL){</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">        warning(<span style="color:#ffd500;">"Can't open file.\n"</span>);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">        <span style="color:#ff3399;">return</span>;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    }</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#ff3399;">while</span>(fgets(p.a, MAX_CHAR_PER_LINE, fd)){</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">        add_last(buffer, p);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    }</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    fclose(fd);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    display(buffer);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">}</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"> </div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"><span style="color:#ff3399;">void</span> write_file(LinkedListType <span style="color:#ff3399;">*</span>buffer) <span style="color:#999999;">// buffer에 있는 data를 disk file에 씀</span></div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">{</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    FILE <span style="color:#ff3399;">*</span>fd;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#4be6fa;">char</span> fname[MAX_NAME];</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    element p;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#4be6fa;">int</span> i;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    </div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#4be6fa;">printf</span>(<span style="color:#ffd500;">"FILE NAME: "</span>);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#4be6fa;">scanf</span>(<span style="color:#ffd500;">"%s"</span>, fname);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#ff3399;">if</span>((fd<span style="color:#ff3399;">=</span>fopen(fname, <span style="color:#ffd500;">"w"</span>))<span style="color:#ff3399;">=</span><span style="color:#ff3399;">=</span>NULL){</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">        <span style="color:#4be6fa;">printf</span>(<span style="color:#ffd500;">"Can't open file.\n"</span>);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">        <span style="color:#ff3399;">return</span>;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    }</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#ff3399;">for</span>(i<span style="color:#ff3399;">=</span><span style="color:#c10aff;">0</span>;i<span style="color:#ff3399;"><</span>get_length(buffer);i<span style="color:#ff3399;">+</span><span style="color:#ff3399;">+</span>){</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">        p<span style="color:#ff3399;">=</span>get_entry(buffer, i);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">        fputs(p.a, fd);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    }</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    fclose(fd);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    display(buffer);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">}</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"> </div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"><span style="color:#ff3399;">void</span> delete_line(LinkedListType <span style="color:#ff3399;">*</span>buffer) <span style="color:#999999;">// 하나의 라인 삭제 </span></div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">{</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#4be6fa;">int</span> position;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    </div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#ff3399;">if</span>(is_empty(buffer))</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">        <span style="color:#4be6fa;">printf</span>(<span style="color:#ffd500;">"Line is already empty!\n"</span>);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#ff3399;">else</span></div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    {</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">        <span style="color:#4be6fa;">printf</span>(<span style="color:#ffd500;">"Input line number: "</span>);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">        <span style="color:#4be6fa;">scanf</span>(<span style="color:#ffd500;">"%d"</span>,&position);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">        <span style="color:#ff3399;">delete</span>(buffer, position);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    }</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    display(buffer);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">}</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"> </div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"><span style="color:#ff3399;">void</span> insert_line(LinkedListType <span style="color:#ff3399;">*</span>buffer) <span style="color:#999999;">// 하나의 라인 삽입</span></div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">{</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#4be6fa;">int</span> position;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#4be6fa;">char</span> line[MAX_CHAR_PER_LINE];</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    element p;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    </div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#4be6fa;">printf</span>(<span style="color:#ffd500;">"Input line number: "</span>);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#4be6fa;">scanf</span>(<span style="color:#ffd500;">"%d"</span>, &position);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    </div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#4be6fa;">printf</span>(<span style="color:#ffd500;">"Input: "</span>);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    fflush(stdin);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    fgets(line, MAX_CHAR_PER_LINE, stdin);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    strcpy(p.a, line);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    add(buffer, position, p);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    display(buffer);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">}</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"> </div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"><span style="color:#ff3399;">void</span> do_command(LinkedListType <span style="color:#ff3399;">*</span>buffer, <span style="color:#4be6fa;">char</span> command) <span style="color:#999999;">// 커맨드 창 출력</span></div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">{</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#ff3399;">switch</span>(command)</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    {</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">        <span style="color:#ff3399;">case</span> <span style="color:#ffd500;">'d'</span>:</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">            delete_line(buffer);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">            <span style="color:#ff3399;">break</span>;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">        <span style="color:#ff3399;">case</span> <span style="color:#ffd500;">'i'</span>:</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">            insert_line(buffer);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">            <span style="color:#ff3399;">break</span>;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">        <span style="color:#ff3399;">case</span> <span style="color:#ffd500;">'r'</span>:</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">            read_file(buffer);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">            <span style="color:#ff3399;">break</span>;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">        <span style="color:#ff3399;">case</span> <span style="color:#ffd500;">'w'</span>:</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">            write_file(buffer);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">            <span style="color:#ff3399;">break</span>;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">        <span style="color:#ff3399;">case</span> <span style="color:#ffd500;">'q'</span>:</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">            <span style="color:#ff3399;">break</span>;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    }</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">}</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"> </div> <div style="padding:0px 6px;white-space:pre;line-height:130%;"><span style="color:#4be6fa;">int</span> main()</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">{</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#4be6fa;">char</span> command;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    LinkedListType buffer;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    </div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    init(&buffer);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#ff3399;">do</span>{</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">        help();</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">        command<span style="color:#ff3399;">=</span>getchar();</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">        do_command(&buffer, command);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">        fflush(stdin);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    } <span style="color:#ff3399;">while</span>(command<span style="color:#ff3399;">!</span><span style="color:#ff3399;">=</span><span style="color:#ffd500;">'q'</span>);</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    </div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">    <span style="color:#ff3399;">return</span> <span style="color:#c10aff;">0</span>;</div> <div style="padding:0px 6px;white-space:pre;line-height:130%;">}</div></div> <div style="text-align:right;margin-top:-13px;margin-right:5px;font-size:9px;font-style:italic;"><a target="_blank" href="http://colorscripter.com/info#e" target="_blank" style="color:#4f4f4f;text-decoration:none;">Colored by Color Scripter</a></div></td> <td style="vertical-align:bottom;padding:0px 2px 4px 0px;"><a target="_blank" href="http://colorscripter.com/info#e" target="_blank" style="text-decoration:none;color:#FFFFFF;"><span style="font-size:9px;padding:1px;background-color:#4f4f4f;">cs</span></a></td></tr></tbody></table></div></div>
    출처 C언어로 쉽게 풀어쓴 자료구조(생능출판)

    이 게시물을 추천한 분들의 목록입니다.
    푸르딩딩:추천수 3이상 댓글은 배경색이 바뀝니다.
    (단,비공감수가 추천수의 1/3 초과시 해당없음)

    죄송합니다. 댓글 작성은 회원만 가능합니다.

    번호 제 목 이름 날짜 조회 추천
    38
    닉언죄] 시로코_愛님 도전장 나눔받았습니다! [1] 베스트금지 천이랑 16/04/11 21:55 29 0
    37
    MFC]View에서 Document의 변수를 제어하려는데 에러가 납니다. [1] 베스트금지본인삭제금지 천이랑 15/12/18 23:01 25 0
    36
    Node.js 파일 forever로 실행 관련 질문 드립니다..ㅠㅠ [2] 베스트금지본인삭제금지외부펌금지 천이랑 15/12/03 13:48 21 0
    35
    SSB 예약특전때문에 큰맘먹고 뉴작다수까지 질렀는데 이런 낭패가.. 천이랑 15/09/09 22:44 39 0
    34
    메2플2게시판 생성을 축하합니다! 천이랑 15/07/28 16:24 13 0
    33
    g2a에서 쉐도우 오브 모르도르 구매하려는데요 질문이 있습니다..!! [1] 본인삭제금지 천이랑 15/07/17 11:07 49 0
    32
    만약 여자친구가 고양이였다면.avi 펌글 천이랑 15/07/06 11:18 224 1
    31
    배트맨 시리즈 vs 어쌔신 크리드 시리즈 선택은..?! [8] 본인삭제금지 천이랑 15/06/20 12:14 97 0
    30
    정말 간절히 원하면 우주가 나서서 도와줍니다 여러분!! 펌글 천이랑 15/06/06 14:08 176 0
    29
    C언어 질문드립니다!! FILE함수 관련 [3] 베스트금지본인삭제금지 천이랑 15/06/05 15:56 43 0
    28
    운영자님 너무하십니다..아무리 그래도 그렇지.. [3] 창작글 천이랑 15/06/03 11:54 103 0
    27
    [충격] 원빈 이나영 결혼식 사진 CG였다네요.. [3] 펌글 천이랑 15/06/01 22:42 553 24
    26
    CS:GO 언제쯤 세일할까요..ㅠㅠ [7] 천이랑 15/05/17 11:44 116 0
    25
    그러고보니 디카게 주소의 상태가..!? [1] 천이랑 15/05/11 01:08 66 1
    [C] 자료구조 라인에디터를 만들고 있습니다. 도움 부탁드려요! [11] 천이랑 15/04/29 11:44 68 0
    23
    [C++/본삭금] 클래스를 이용한 이중연결리스트 추가 질문드립니다. [8] 천이랑 15/04/27 23:02 25 0
    22
    [C++/본삭금] Class를 이용한 이중 연결리스트 관련 질문드립니다! [3] 천이랑 15/04/27 20:32 35 0
    21
    [C] malloc/구조체 관련 프로그래밍 질문 드립니다..! [3] 천이랑 15/03/29 13:31 46 0
    20
    쿠키런] 이번 코코아맛 머그컵 상품정보에 이런게 있는데.. [3] 천이랑 14/12/10 22:37 102 6
    19
    시집을 읽다 문득 여기가 생각났다. 천이랑 14/11/26 19:37 12 7
    18
    스물하나, 인생 첫투표 마치고 왔습니다!! 천이랑 14/06/04 12:20 54 0
    17
    해외 게임 구매할때 텍스 면제되는 지역이 어디인가요? 천이랑 14/04/06 23:56 23 0
    16
    문명5 컴플리트에디션 질문드립니다. [3] 천이랑 14/04/06 10:27 83 0
    15
    점검시간에 나눔해서 혹시 안가져가셨나 천이랑 13/12/17 08:48 102 1
    14
    비약먹고 버닝하려했는데 점검이라니 화난다 화나 [6] 천이랑 13/12/16 10:31 186 6
    13
    도타2 베타키 필요하신분 있나요? 있으면 나눔 [1] 천이랑 13/12/01 13:39 39 0
    12
    [닉언급죄송]Elendil님께 테라리아 나눔받았습니다! 천이랑 13/10/22 00:23 60 1
    11
    닉네임 변경관련 질문이요.. [2] 천이랑 13/09/13 00:36 70 0
    10
    크롬 이미지 깨짐현상.. 듣도보도 못한 현상인데 이거 뭔가요?ㅠ [1] 천이랑 13/09/10 00:22 30 0
    9
    일본산 샤프나 볼펜..써도 될까요?? [1] 천이랑 13/08/29 00:19 34 0
    [1] [2]
    단축키 운영진에게 바란다(삭제요청/제안) 운영게 게시판신청 자료창고 보류 개인정보취급방침 청소년보호정책 모바일홈