삽질의 추억

doldori의 이미지

제가 http://bbs.kldp.org/viewtopic.php?p=238614&highlight=#238614에 올렸던
코드의 일부입니다.

while ((len = getline(line, MAXLINE)) > 0)
{
    if (len > 0)       //  <--- 요놈
        detab(line, TABSIZE);
    printf("%s", line);
}

while 루프 안에서는 len은 항상 0보다 큰데 쓸데없는 if가 들어가 있네요.
사실 len도 필요없는 변수고요.
비슷한 연습문제들이 더 있는데 지금 보니 모두 이런 식... ^^;
Forums: 
ed.netdiver의 이미지

getline이 어떤 error code를 return하는지 모르겠지만, 걍 길이만
return하는거라면,
while안에서의 ' .. > 0' 비교문도 필요가 없지 않을까요?

--------------------------------------------------------------------------------
\(´∇`)ノ \(´∇`)ノ \(´∇`)ノ \(´∇`)ノ
def ed():neTdiVeR in range(thEeArTh)

doldori의 이미지

아, 물론 그래도 됩니다.

while (getline(line, MAXLINE))

그런데 TCPL 예제 코드에 "> 0"까지 나와 있어서 따라하느라 그랬던 것 같습니다.

ed.netdiver의 이미지

아궁 그렇군요^^;
아이 민망*^^*;;

--------------------------------------------------------------------------------
\(´∇`)ノ \(´∇`)ノ \(´∇`)ノ \(´∇`)ノ
def ed():neTdiVeR in range(thEeArTh)