当前位置:C++技术网 > 精选软件 > C++ Primer Plus 6th 5.8 复习题 第2题 循环打印陷阱

C++ Primer Plus 6th 5.8 复习题 第2题 循环打印陷阱

更新时间:2019-04-23 08:52:12浏览次数:1+次

C++ Primer Plus复习题5.8 第2题 循环打印陷阱
题目:
2.如果下面的代码片段是有效程序的组成部分,它将打印什么内容?

int i;
for(i=0; i<5;i++)
    cout << i ;
    cout << endl ;

答案: 

它将打印下面的内容:

01234
注意,cout<<endl;不是循环体的组成部分,因为没有大括号。

C++技术网辅导详解解答:

    此题的关键在于对于大括号的使用的理解。在没有大括号的时候,一个语句就是循环体。C/C++中不会以缩进来区分代码的分块的。代码缩进在python代码中是有这个作用的。这是视觉上的排版造成的一个错觉。

    这种情况不仅在循环中有,在判断语句里同样如此。反正,没有大括号括起来的代码块,只有一句是被执行的。这一句是看;分号来识别结尾的。这个点在各种考试会经常出现。而在实际开发中,尽量避免给自己挖坑。就算只有一行代码,也要用大括号括起来,这样辨识度特别高,仅仅就是多了点符号而已。另外一个好处就是,实际开发中代码是经常改动的,也会添加代码。如果我们使用大括号括起来的,那么后续添加代码就不容易出错了。这一点是非常实用的。