设为首页 加入收藏

TOP

C++ 语言基础2(二)
2011-01-02 12:42:36 】 浏览:3862
Tags:语言基础
ol();
// more code
} while (! done);
使用dowhile循环还是while循环取决于循环本身的作用。语法中do while循环语句:do {
tatements;
} while (cond_expr);
只要条件表达式cond_expr为真(非零),do循环重复statements码段。循环状态必须在do语句之前初始化,并在码段中显式修改。条件表达式cond_expr为假时,循环终止。


goto语句可以将程序转入前面用标号和冒号声明的标号处。
下列代码演示了这个语句:
bool done = false;
startPoint:
// do some stuff
if (!done) goto(startPoint);// loop over, moving on...
这里不需要大括号,因为goto语句与标号之间的所有代码均会执行。
goto语句被认为是C++程序中的不良语句。用goto语句能做的任何工作都可以用While和dowhile循环进行。一个好的C++编程(www.cppentry.com)人员很少在程序中使用goto语句。如果你从别的语言转入C++,你会发现C++的基本结构使goto语句显得多余。

循 环中有两个关键字必须介绍,那就是控制循环中程序执行的continue和break。continue语句强制程序转入循环底部,跳过continue 语句之后的任何语句。例如,某个测试为真时,循环的某个部分可能不需要执行。这时可以用continue语句跳过continue语句之后的任何语句:
bool done = false;
while (!done) {
// some codebool error =SomeFunction();
if (error) continue;
// jumps to the top of the loop
// other code that will execute only if no error occurred
}

break语句用于在循环正常测试条件符合之前终止循环执行。例如,可以在ints数组中搜索某个元素,找到数字后可以终止循环执行,取得该数字所在的索引位置:
int index=1
int searchNumber=50;
for (int i=0;i<numElements;i++) {
if (myArray[i]==searchNumber) {
index=i;break;}
}
if(index !=1)
cout << "Number found at index " << index << end1;
else
cout <<"Number not found in array." << end1;
continue和break语句在许多情况下有用。和其它要介绍的知识一样,continue和break语句也要在实践中不断熟悉。


switch语句是高级if语句,可以根据表达式的结果执行几个码段之一。表达式可以是变量、函数调用结果或其它有效C++表达式。下面举一个switch语句例子:switch (amountOverSpeedLimit) {
case 0 :
{fine =0;
break;
}
case 10 :
{fine = 20;
break;
}
case 15 :
{fine =20;
break;
}
case 20 :
case 25 :
case 30 :

fine=amountOverSpeedLimit * 10;
break;
}
default :
{fine =GoToCourt();
jailTime=GetSentence();
}
}
switch 语句分为几个部分。首先有一个表达式,本例中是amountOverSpeedLimit变量(够长的变量名!),然后用case语句测试表达式,如果 amountOverSpeedLimit等于0(case 0:),则向变量fine赋值0,如果amountOverSpeedLimit等于10,则向变量fine赋值20,等等。在前三个case中都有 break语句。break语句用于转出switch块,即找到了符合表达式的情况,switch语句的余下部分可以忽略了。最后有个default语 句,如果没有符合表达式的情况,则程序执行default语句。
首页 上一页 1 2 下一页 尾页 2/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇C++ 枚举子相关类型解析 下一篇C++ 语言基础(1)

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目