2012-04-25 14 views
1

最初にget_first()を呼び出し、最後にNULLを返すget_next()を呼び出して、リストを繰り返し処理したいとしますリストの可読性:get_first/get_next、 "while"と "for"ループの繰り返しをリストする

どちらをお読みになりたいですか?反復の

element = get_first(list); 
while (element) 
{ 
    process(element); 
    element = get_next(list); 
} 

for (element = get_first(list); element; element = get_next(list)) 
{ 
    process(element); 
} 

状態は、リスト構造体の内側に保存されます。

私は個人的にはwhileバージョンに慣れていますが、誰かがforバージョンを使用していたのを見て、何が起こっているのかを簡単に理解できました。

答えて

0

どちらも非常に読みやすいです。読者をどちらかと混同することはありません。 whileループはおそらくもう少し読みやすくなります(しかし、人の走行距離は変わるかもしれません)。そうすれば、リストが一度しか反復されていなければ、より簡潔なforループを使用するでしょう。

関連する問題