//Version1
while(cin.get(ch))
{
if(ch==' ')
spaces++;
if(ch=='\n')
newlines++;
}
//Version2
while(cin.get(ch))
{
if(ch==' ')
spaces++;
else if(ch=='\n')
newlines++;
}
version1和version2的區別:
這兩種寫法都可以達到相同的效果,但是version2的效率更高。假設讀取的下一個ch爲空格,在version1中執行完空格判斷語句後,任然會繼續去執行換行判斷;但是在version2中,在進行了空格判斷後就不會繼續去執行接下來的判斷了。