我正在嘗試創建一個循環,而不是繼續輸入輸入,直到輸入提供了打破循環的命令。我現在做看起來有點像這樣:循環不會結束,直到中斷
int start = 1;
while (start == 1) {
//Program statement
}
不過,我覺得好像有是創建一個循環,重複,直到用戶發出命令停止它更容易,更有效的方式。有這樣的事情存在嗎?
我正在嘗試創建一個循環,而不是繼續輸入輸入,直到輸入提供了打破循環的命令。我現在做看起來有點像這樣:循環不會結束,直到中斷
int start = 1;
while (start == 1) {
//Program statement
}
不過,我覺得好像有是創建一個循環,重複,直到用戶發出命令停止它更容易,更有效的方式。有這樣的事情存在嗎?
一個常見的成語來表達C和其他類似C語言,包括Objective-C的一個「永遠」的循環,是用一個空for
:你有這個現在已經是相安無事
for(;;) {
// statements
}
這完全是我想要的!謝謝 – JTApps 2012-03-29 18:36:36
'雖然(1)'也很常見。 – rickster 2012-03-29 18:37:51
@rickster雖然'for(;;)'是在K&R(第二版第54頁頂部)中提出的,但確實如此。 – dasblinkenlight 2012-03-29 18:42:47
你應該做的是這樣的:
while(true)
{
if(exit_condition)
{
break;
}
}
這幾乎是我所擁有的,除非真實是一個有效的未申報條件 – JTApps 2012-03-29 18:24:26
do{
userInput = readUserInput()
}while(userInput != exit_condition)
任何環路作爲,同時,甚至轉到可以做這個工作。如果在循環中放置條件而不是「真」,則可以減少代碼並且不需要使用「break」語句。
不行;因爲輸入是在條件之後。 – JTApps 2012-03-29 18:25:44
do {userInput = readUserInput()} while(user_input!= exit_condition)will123 then – 2012-03-29 18:27:33
There,I fixed it – 2012-03-29 18:34:18
的方式,儘管通常該變量將被稱爲「繼續」,否則「停止」並且測試顛倒:「BOOL stop = NO; while(!stop){// ...};' – 2012-03-29 19:42:20