当前位置: 首页 > news >正文

住房城乡建设部网站诚信app香港账号

住房城乡建设部网站诚信,app香港账号,企业网站里面的qq咨询怎么做,做网站教程靠谱吗目录 1.知识回顾 2.范围for 格式 使用 运行结果 运行过程 范围for的本意 作用 注意 3.底层分析范围for的执行过程 反汇编代码 分析 4.auto关键字 格式 基本用法 在范围for中使用auto 1.知识回顾 for循环的使用参见25.【C语言】循环结构之for文章 2.范围for C…

目录

1.知识回顾

2.范围for

格式

使用

运行结果

 运行过程

范围for的本意

作用

注意

3.底层分析范围for的执行过程

反汇编代码

分析

4.auto关键字

格式

基本用法

在范围for中使用auto


1.知识回顾

for循环的使用参见25.【C语言】循环结构之for文章

2.范围for

C++11中引入范围for

格式

for ( 类型 变量名 : 数组名 )
{//......
}

使用

#include <iostream>
using namespace std;
int main()
{int arr[10] = { 1,2,3,4,5,6,7,8,9,10 };for (int a : arr){cout << a << " ";}return 0;
}

运行结果

 运行过程

范围for的本意

将arr数组中的元素,依次放在a变量中

作用

遍历容器如数组、vector和list等

注意

1.变量的类型和数组的类型要匹配

2.其对数组中所有元素进行遍历的,但是实际在做题的
过程中可能只需要遍历数组中指定个数的元素,此时范围fo不合适

3.范围for不能修改数组元素

3.底层分析范围for的执行过程

运行环境:debug+x86

打开VS2022,先在代码生成中改动两个地方

反汇编代码

#include <iostream>
using namespace std;
int main()
{push        ebp  mov         ebp,esp  sub         esp,78h  push        ebx  push        esi  push        edi  mov         ecx,offset _2A500742_leetcode@cpp (03AE068h)  call        @__CheckForDebuggerJustMyCode@4 (03A1389h)  nop  int arr[10] = { 1,2,3,4,5,6,7,8,9,10 };mov         dword ptr [arr],1  mov         dword ptr [ebp-24h],2  mov         dword ptr [ebp-20h],3  mov         dword ptr [ebp-1Ch],4  mov         dword ptr [ebp-18h],5  mov         dword ptr [ebp-14h],6  mov         dword ptr [ebp-10h],7  mov         dword ptr [ebp-0Ch],8  mov         dword ptr [ebp-8],9  mov         dword ptr [ebp-4],0Ah  for (int a : arr)lea         eax,[arr]  mov         dword ptr [ebp-2Ch],eax  mov         eax,dword ptr [ebp-2Ch]  mov         dword ptr [ebp-30h],eax  mov         eax,dword ptr [ebp-2Ch]  add         eax,28h  mov         dword ptr [ebp-34h],eax  jmp         main+7Ah (03A192Ah)  mov         eax,dword ptr [ebp-30h]  add         eax,4  mov         dword ptr [ebp-30h],eax  mov         eax,dword ptr [ebp-30h]  cmp         eax,dword ptr [ebp-34h]  je          main+8Ch (03A193Ch)  mov         eax,dword ptr [ebp-30h]  mov         ecx,dword ptr [eax]  mov         dword ptr [ebp-38h],ecx  {}jmp         main+71h (03A1921h)  return 0;xor         eax,eax  
}pop         edi  pop         esi  pop         ebx  mov         esp,ebp  pop         ebp  ret

分析

上方代码较为复杂,见105.5【x86汇编】底层分析范围for的执行过程

4.auto关键字

之前在C语言的16.【C语言】初识常见关键字 上文章中提到过auto的一点内容

节选内容

auto自动:每个局部变量都由auto修饰,含义:自动创建,自动销毁

                      auto int a=0;等价于int a=0;   

但本文讲的auto与上方不同,其让可让编译器自动推导出变量的类型

格式

auto 变量名 = 变量值;

基本用法

#include <iostream>
using namespace std;
int main()
{auto a = 1;auto b = 1.2;auto c = 'c';return 0;
}

将下列代码用VS2022打开

鼠标放在变量值旁边,会自动显示变量的类型

在范围for中使用auto

直接让编译器推测a的类型,不用手动分析

#include <iostream>
using namespace std;
int main()
{int arr[10] = { 1,2,3,4,5,6,7,8,9,10 };for (auto a : arr){cout << a << " ";}return 0;
}

http://www.dnsts.com.cn/news/42.html

相关文章:

  • 跨境电商和外贸的区别高州网站seo
  • 网站建设中网站需求分析报告作用友情连接
  • led灯网站模板企业网站seo推广方案
  • 定制app软件seo营销软件
  • 政府网站建设的易用性网站关键词优化多少钱
  • 普通的旧房装修价格百度seo搜索
  • 大的网站建设公司软文一般发布在哪些平台
  • 郑州响应式网站设计百度推广广告收费标准
  • 长春网站开发报价外贸营销网站制作公司
  • 网站提示404errorsem推广
  • 常州网站制作包括哪些网站系统
  • ui设计页面怎么进行网站关键词优化
  • 最专业的网站建设哪家好自己怎么注册网站
  • 网站建设提案pptseo课程简介
  • 企业官网网站建设十大网站管理系统
  • 知名网站制作全包关键字参数
  • 陈坤做直播在哪个网站西安网站开发制作公司
  • 建水网站开发有哪些网络推广平台
  • 网站在线布局企业产品推广运营公司
  • 网站建设项目报告总结报告优化seo方案
  • 企业门户网站费用网络营销课程有哪些
  • wordpress免费摄影主题seo网络运营
  • php网站中水印怎么做的网络推广是做什么的
  • 用游戏人物做网站属于侵权吗小广告模板
  • 产品做推广都有那些网站起飞页自助建站平台
  • 如何制作个人网站教程宁波seo优化排名
  • vps做网站的环境怎么做蛋糕
  • 搜狗推广效果好吗seo关键词排名优化工具
  • 大型网站建设历史武汉java培训机构排名榜
  • 网站建设需怎么做怎么在百度上做广告