C++的for语句详解
2015-11-02 13:04
405 查看
for(int i=0;i<10;i++)
cout<<i<<endl;
这是很简单的语句了
来看下一句代码
输出什么呢?
是的,运行后,无限输出1
我们来看一下
for ( #1 ; #2 ; #3 )
{
#4
}
其实上面的输出就是考察for语句的运作次序
那么这个顺序是什么呢?
#1----------初始化操作,只运行一次
#2-------------------------------------------------------
#4-------------------------------------------------------
#3-------------------------------------------------------这三句循环运行,直到在#2句判断停止循环为止
#2
#4
#3
#2
#4
#3
等等
看一个例子:
在一个int数组里找到第一个这样的的数的下标,它的后面的数字跟它一样,如果找不到返回-1
例如:int a[6]={1,2,2,3,4,5};
则函数返回的下标值应该是1,也就是a[1]=2这个数
来看函数实现
再来看下面的代码输出什么
其实上面的语句相当于 for ( int i = 1, j = 1; i <= count1 || j <= count2; i++, j++ )
所以输出的都是
1 1
2 2
3 3
4 4
5 5
但是切记不能写成则这样哦
for (int i = 1, int j = 1; i <= count1||j <= count2; i++, j++)
不能在for里边分开声明变量
cout<<i<<endl;
这是很简单的语句了
来看下一句代码
#include <iostream> int main() { for (int i; i = 0, ++i < 10;) std::cout << i << std::endl; return 0; }
输出什么呢?
是的,运行后,无限输出1
我们来看一下
for ( #1 ; #2 ; #3 )
{
#4
}
其实上面的输出就是考察for语句的运作次序
那么这个顺序是什么呢?
#1----------初始化操作,只运行一次
#2-------------------------------------------------------
#4-------------------------------------------------------
#3-------------------------------------------------------这三句循环运行,直到在#2句判断停止循环为止
#2
#4
#3
#2
#4
#3
等等
看一个例子:
在一个int数组里找到第一个这样的的数的下标,它的后面的数字跟它一样,如果找不到返回-1
例如:int a[6]={1,2,2,3,4,5};
则函数返回的下标值应该是1,也就是a[1]=2这个数
来看函数实现
#include <iostream> int AdjacentFind(int a[]); int main() { int a[6] = { 1,2,2,3,4,5 }; std::cout << AdjacentFind(a); return 0; } int AdjacentFind(int b[]) { int length = 6; int i = 0, j = length; if (i != j) { for (int k; k = i, ++i != j;) { if (b[k] == b[i]) { return k; } } } return -1; }这就不用介绍了,好好看看上面的顺序,自己理解下就想通了
再来看下面的代码输出什么
int count1 = 2; int count2 = 5; for (int i = 1, j = 1; i <= count1, j <= count2; i++, j++) { cout << i << " " << j << endl; }
其实上面的语句相当于 for ( int i = 1, j = 1; i <= count1 || j <= count2; i++, j++ )
所以输出的都是
1 1
2 2
3 3
4 4
5 5
但是切记不能写成则这样哦
for (int i = 1, int j = 1; i <= count1||j <= count2; i++, j++)
不能在for里边分开声明变量
相关文章推荐
- c++ volatile关键字
- 详解C++中命名空间的意义和用法
- 【C/C++学院】0823-静态联合编译与动态联合编译/父类指针子类指针释放/虚函数/纯虚函数概念以及虚析构函数/抽象类与纯虚函数以及应用/虚函数原理/虚函数分层以及异质链表/类模板的概念以及应用
- C++11 标准新特性:Defaulted 和 Deleted 函数
- c语言学习之基础知识点介绍(十):内存空间模型、地址解释及指针变量
- 今日学习札记——C++程序设计1(11-02)
- C++标准库阅读摘要
- 3.2 ACM输入输出--多组测试用例--C、C++
- ——黑马程序员——C语言中的指针(二)
- C语言第五章 语句
- C++11 多线程下生产者消费者模型详解
- 做c语言的码农专业发展方向
- C语言设计模式
- C++ 初始化列表
- 外部exe程序启动CAD并且自动加载CAD的ARX程序的过程
- OC语言中BOOL 和 bool 区别
- 《C++ primer》英文第五版阅读笔记(七)——定义自己的数据类型
- C语言第四章
- C语言程序如何优化
- 某国内知名自主研发游戏公司C++笔试题