C++:关于“error C2374: 'i' : redefinition; multiple initialization”
转:http://zhidao.baidu.com/question/392437962.html
问题:
#include<iostream>using namespace std;int main(){int array1[2][3]={1,2,3,4,5};int array2[2][3]={{1,2},{4}};cout<<"array1: ";for(int i=0;i<2;++i)for(int j=0;j<3;++j)cout<<array1[i][j]<<",";cout<<"\narray2: ";for(int i=0;i<2;++i)for(int j=0;j<3;++j)cout<<array2[i][j]<<",";cout<<"\n";} 说明一下 我将数组2的i改为m等值 运行成功 将数组2的j改为m却运行不成功!!这是什么原因!! #include<iostream>using namespace std;int main(){int array1[2][3]={1,2,3,4,5};int array2[2][3]={{1,2},{4}};cout<<"array1: ";for(int i=0;i<2;++i)for(int j=0;j<3;++j)cout<<array1[i][j]<<",";cout<<"\narray2: ";for(int m=0;m<2;++m)for(int k=0;k<3;++k)cout<<array2[m][k]<<",";cout<<"\n";} 这个是可以的!!
解决:
主要是定义重复的意思(redefinition) 一般在同一段代码中不要出现变量重复定义,否则就会报出错; 你这里面的出错这是和编译器有关,vc报错而有的不报错 for(int i=0;i<2;++i)for(int j=0;j<3;++j)cout<<array1[i][j]<<",";cout<<"\narray2: "; for(int i=0;i<2;++i)for(int j=0;j<3;++j)cout<<array2[i][j]<<","; 你看看这里面两个for循环中的i都在同一层,然后你生命了两次int所以就出错了。你只要把第二个int去掉就不会有错了 for(int i=0;i<2;++i)for(int j=0;j<3;++j)cout<<array1[i][j]<<",";cout<<"\narray2: "; for(i=0;i<2;++i)for(int j=0;j<3;++j)cout<<array2[i][j]<<","; 所以你后来把i改成m就没错就是因为变量重复定义没有了。 那么你一定又会问j为什么就可以? 这是因为j是在for循环里面,第一个j是第一个for里面的变量,第二个j是第二个for里面的变量,他们并不在同一个区间,所以就不会出错了。如果你把他们放其一就还会出错,例如下面程序就会报错 for(int i=0;i<2;++i){for(int j=0;j<3;++j)cout<<array1[i][j]<<",";for(int j=0;j<3;++j) //要把第二个int给去掉才不会出错cout<<array2[i][j]<<","; } 为了防止以上这些错误,你可以在开始的时候一起定义,后面不定义也不会出错了,比如 #include<iostream>using namespace std;int main(){int array1[2][3]={1,2,3,4,5};int array2[2][3]={{1,2},{4}};int i,j; //在for循环上面一起定义了,后面就不用定义cout<<"array1: ";for(i=0;i<2;++i)for(j=0;j<3;++j)cout<<array1[i][j]<<",";cout<<"\narray2: ";for(i=0;i<2;++i)for( k=0;k<3;++k)cout<<array2[m][k]<<",";cout<<"\n";}
C++:关于“error C2374: 'i' : redefinition; multiple initialization”相关推荐
- Error: Can't place multiple pins assigned to pin location……解决办法
转自:http://blog.sina.cn/dpool/blog/s/blog_6f0eeb3301014pi7.html 今天用DE0做VGA实验,在分配管脚后全编译出现下面这样的错误: Erro ...
- QuartusII绑定引脚时出现错误:Error: Can‘t place multiple pins assigned to pin location Pin_108 (IOC_X34_Y2_N0)
文章目录 一.错误描述 二.解决 一.错误描述 今天在使用QuartusII画计组课设的电路图时,绑定硬件平台的108引脚时发生了一个错误 错误信息如下 Error: Can't place mult ...
- error:03000086:digital envelope routines::initialization error
error:03000086:digital envelope routines::initialization error 问题原因分析: 1.node版本问题 2.具体错误原因:ERR_OSSL_ ...
- error:03000086:digital envelope routines::initialization error 问题解决
问题描述 问题背景 更换新机器的时候下载使用了最新版的nodejs,部署老项目的时候启动报错了 错误描述 跑了一下ruoyi的项目试试,就直接给报了 Error: error:0308010C:dig ...
- opensslErrorStack: [ ‘error:03000086:digital envelope routines::initialization error‘ ]
学习练习:自定义 webpack 搭建 React 开发环境. 遇到的问题:在 terminal终端 执行 npx webpack-dev-server 时,报错:opensslErrorStack: ...
- 输入npm run dev报错“ensslErrorStack: [ ‘error:03000086:digital envelope routines::initialization“解决方法之一
一.问题描述 [未解决]1.输入java -version没有反应 [已解决]2.输入npm run dev报错 opensslErrorStack: [ 'error:03000086:digita ...
- 已解决:opensslErrorStack: [ ‘error:03000086:digital envelope routines::initialization error‘ ],
文章目录 问题描述 解决方案 问题描述 我的node 版本为 17.9.1,在运行一个老项目的时候,报如下错误: opensslErrorStack: [ 'error:03000086:digita ...
- Keil 提示error C231: ‘INT0‘: redefinition的原因及其解决方法
文章目录 1. 编译现象 2. 分析原因 3. 解决方法 1. 编译现象 2. 分析原因 redefinition 中文意思是 "重复定义".纵览我所写的程序,只有此处首次出现 I ...
- 运行老项目报错 opensslErrorStack: [ ‘error:03000086:digital envelope routines::initialization error‘ ].....
原因:node版本高于16,项目的版本不高于16. 解决方法: 在命令行修改环境变量:$env:NODE_OPTIONS="--openssl-legacy-provider" 然 ...
最新文章
- Android Read-only file system
- Spring Boot 集成 MyBatis 与 c3p0
- Kafka单机、集群模式安装详解(一)
- 写一个简版 asp.net core
- Android之解决多语言适配部分TextView内容左对齐和内容一行不排满就到第二行问题
- Java12题:发奖金问题
- idea怎么调试jsp页面_解决idea的c标签错误
- 软件测试都有哪些证书,软件测试都有哪些证书呀?有用吗?
- Linux内存管理:kmemcheck介绍
- CodeForces 521D nice贪心
- 从第一范式(2nf)到第二范式(3nf)_关系数据模型-范式
- 剪裁NV21任意一部分的代码
- php开发人脸识别流程,php使用face++实现一个简单的人脸识别系统
- cmd imp导入dmp文件_dmp文件导入抽取方法(示例代码)
- SPSS实现距离分析
- 博客之星:我去,你竟然还不会用 synchronized
- JavaScript实现页面动态添加图片
- [py] 统计输入字符串中的单词个数及单词的平均长度
- 基于JAVA校园爱心志愿系统计算机毕业设计源码+数据库+lw文档+系统+部署
- P1551 亲戚 并查集
热门文章
- 实现一个不能被继承的类
- xp版php,PHP5.3以后的版本如何在XP中安装
- 最新发布丨游戏市场“超预期”增长背景下,如何加速产品精品化 运营精细化?...
- @你 ,这是一个会改变你的 2019 的神奇礼物,真好!
- 深度案例 | TO B 企业如何从 0 到 1 实现数据驱动?
- 聊聊spring cloud gateway的SecureHeadersGatewayFilter
- PAT1034 Head of a Gang (30)(并查集)
- 解决ntp的错误 no server suitable for synchronization found
- CentOS7中关闭selinux
- Ceph的架构(一)