안녕하세요.
회사 소스 수정하다가 궁금한게 있어서 올립니다.
while(token != NULL) { if(token == "") break;
... ...
break; }
위의 while문 마지막에 break 있는 것은 결국 1회성 loop라는 것인데,
switch문에서 case가 3~4개 이하인 경우는 if문으로 수정해주는 것 것처럼
위의 while문을 if문으로 바꿔줬을 때에도 차이가 있을 지요..
중간에 continue가 있다면 달라지고, break가 중간에 있으면 빠져나오는 역할로 사용되기때문에 소스의 수정이 필요해보이네요.
프로그래밍 트릭일 수 있습니다. 한 묶음의 코드 수행 중에 특정 조건이 되면 바로 그 블럭의 밖으로 분기하는 경우에 사용합니다. 다른 제어문으로 사용한 것보다 더 깔끔한 코드가 나옵니다.
do { if (token == NULL || token == "") break; // ... do something ... // ... // ... if (token == "xxx") break; // ... do something else ... // ... // ... if (token == "yyy") break; // ... do something else more ... // ... // ... } while (0);
내 블로그: http://unipro.tistory.com
텍스트 포맷에 대한 자세한 정보
<code>
<blockcode>
<apache>
<applescript>
<autoconf>
<awk>
<bash>
<c>
<cpp>
<css>
<diff>
<drupal5>
<drupal6>
<gdb>
<html>
<html5>
<java>
<javascript>
<ldif>
<lua>
<make>
<mysql>
<perl>
<perl6>
<php>
<pgsql>
<proftpd>
<python>
<reg>
<spec>
<ruby>
<foo>
[foo]
중간에 continue가 있다면
중간에 continue가 있다면 달라지고,
break가 중간에 있으면 빠져나오는 역할로 사용되기때문에
소스의 수정이 필요해보이네요.
프로그래밍 트릭일 수 있습니다.한 묶음의 코드 수행
프로그래밍 트릭일 수 있습니다.
한 묶음의 코드 수행 중에 특정 조건이 되면 바로 그 블럭의 밖으로 분기하는 경우에 사용합니다.
다른 제어문으로 사용한 것보다 더 깔끔한 코드가 나옵니다.
내 블로그: http://unipro.tistory.com
댓글 달기