首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在C++中为什么我不能像这样编写for()循环:for(int i = 1,double i2 = 0;

在C++中,不能在for循环的初始化部分声明两种不同类型的变量,因为它会导致编译错误。在for循环中,初始化部分应该只包含一种类型的变量。

如果您想要在for循环中使用两个不同类型的变量,可以将它们分开声明,然后在循环中分别进行赋值。例如:

代码语言:txt
复制
int i;
double i2;
for (i = 1, i2 = 0.0; i < 10; i++, i2 += 0.5) {
    // 循环体
}

这样,您可以在for循环中同时更新两个不同类型的变量。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • 写算法,用 C++ 还是用 Java ,差别大吗?

    大家好,是为人造的智能操碎了心的智能禅师。 今天带来的文章,是 GitChat 签约作者王晓华不断被读者吐槽:“好好一本算法书为什么要用 C++ 来写” 时,万般无奈下憋出来的。...好好一本算法书,为什么要用 c++ ? 尽管学习 Java 了很长时间,但是因为工作的需要,很少用 Java 做过大型的项目,所以公开算法实现的时候,本能地选择最擅长的 C++ 语言。...介绍算法用的例子都是用 C++ 编写的,最终招致读者吐槽:“好好的一本算法书,为什么要用 C++?”...通常是这样理解的:Java 是跨平台的 C++,是一种更好的 C++(是不是有点拉仇恨的感觉)。...C++ 的函数有很多类型修饰,比如常见的 const,C++11 后新增了 final 和 override,但是 = 0 一直是一个比较奇怪的存在,它表明这个函数没有实现,需要在派生类实现,同时,也说明这个类是不能被实例化的

    2.8K20

    SSE的学习

    看到 intel向量化指令矩阵乘应用的评估_softee的专栏-CSDN博客 使用SIMD技术提高C++程序性能_章志强的专栏-CSDN博客描述的效果而心动,然后咨询了下 Imageshop...然而我的疑问是: 1、如果对一个步骤用了TBB/MKL/CILK这种易操作的并行指令,内部能否再用SSE指令,能否性能进一步提升?或者OMP一样不适合嵌套并行? 答:以后测试就知道了。...v=GwII1AJzKN4 ! 6、SSE、SSE3等这些就是将汇编写的指令集包装成了C语言,然后供C/C++开发者方便调用而不用亲自去写汇编,同时可读性可维护性增强。...只知道如果用malloc初始化的数据是没有对齐的。 问题2:SSE耗时并没有少于C++的,为什么? 不过的确version2不用在loop内set了,耗时比version1少。...还有就是尽量让loop停止条件简单,而且循环时停止条件始终是固定的,这样最好; 还建议少用打破循环的指令如break、goto等; 循环每次之间尽量无依赖,比如read-after-write操作

    79450

    Boost C++ 库 | 智能指针(共享指针、共享数组、弱指针、介入式指针、指针容器)入门

    这样就可以标准容器里存储智能指针了——你不能在标准容器存储 std::auto_ptr,因为它们拷贝的时候传递了所有权。.../boost/build/Desktop_Qt_6_5_3_GCC_64bit-Debug/boost...12多亏了有 boost::shared_ptr,我们才能上例展示的那样,标准容器安全的使用动态分配的对象..._6_5_3_GCC_64bit-Debug/boost...12i1 = 1i2 = 1i1 = 2i2 = 1本例定义了2个共享指针 i1 和 i2,它们都引用到同一个 int 类型的对象。...main(){ boost::shared_arrayi1(new int[2]); boost::shared_arrayi2(i1); i1[0] = 2;...std::cout << "i1[0] = " << i1[0] << std::endl; std::cout << "i2[0] = " << i2[0] << std::endl; i1

    11110

    模板(上)——(函数模板)

    模板概述 C++有两种模板机制:函数模板和类模板。模板的参数也称为类属参数。 模板、模板类、对象和模板函数之间的关系: ?...函数体; }//template语句与函数模板声明之间不允许有别的语句 编写函数模板 1.定义一个普通的函数,数据类型采用普通的数据类型 //求绝对值函数模板 int abs(int x) { if...自定义参数类型 可以函数模板的“形参表”和对模板函数的调用中使用类的类型和其他用户定义的类型。如果这样,就必须在类设计重载运算符,以便模板函数能对类变量进行正确的运算,否则就会出现错误。...x : y; } void main() { int i1 = 2, i2 = 3, i3 = 5; char c1 = 'a', c2 = 'c', c3 = 'd'; double f1 =...2.321, f2 = 3.133; cout << max(i1, i2) << endl; cout << max(i1, i2, i3) << endl; cout << max(c1, c2

    1.5K20

    Java基础 ——入坑必读

    1.1.4 分隔符   C/C++熟知的空白符(Tab、回车、空格、换行)、普通分隔符(点、分号、逗号……)、单行注释符 // 注释内容 ,多行注释符 /* 注释内容 */ 就不再详细展开来讲,这里我们主要了解...); (4)若多个单词构成变量名,则单词需要连在一起写,且除第一个单词外,其余单词首字母需大写; 声明 两种声明格式: int a,b,c; float b1,i1; double c,c1=2d...125,b2=38; int i1,i2,i3; i1=b1^b2; System.out.println("b1="+Integer.toString(...)); i1=i1^b2; System.out.println("(b1^b2)^b2="+Integer.toString(i1,2)); i2=b1...double sum=0,d=1.0;//因为有除法,故用小数 因为值<1.0 X 10^-8 所以d=1.0初值 int n=1; while(d>1.e-8){ //注意计数法书写格式

    31930

    C#入门知识大总结(C语言的基础上)

    位有效数字,具体取决于编译器 四舍五入 从左到右非0数开始算有效数字 double 存储15~17位有效数字 C#声明小数默认double类型 decimal 存储27~28位 float f = 0.1234f...小范围不能转大范围 对于浮点数之间,要注意decimal类型无法用隐式转换去存储double和float,但float可以转换成double。...无符号的变量可以转有符号的变量,但前提是有符号的变量覆盖的范围要包括无符号的类型 int i2 = 1; uint ui2 = 1; byte b2 = 1; i2 = ui2;// 错误!...无法覆盖无符号数的全部范围 i2 = b2;// 正确代码 浮点数可以装载任何类型的整数,不管是无符号还是有符号 (decimal不能隐式存储float和double 但可以隐式存储整型) 整数不能隐式存储浮点数...("是{0},今年{1}岁,想要{2}","Daniel",18,"study"); 3.控制台打印拼接 后面的内容比占位符多不会报错,比占位符少则会报错 Console.WriteLine("A

    24720

    C++ 和 Java 写算法,有差别吗?

    写了七、八年的 “算法博客”,出版了一本《算法的乐趣》,一门《算法应该怎么“玩”?》课程,所有介绍算法的例子都是用 C++ 编写的。 很多读者来向我吐槽:“好好的一本算法书,为什么要用 C++?”...或者 “C++ 很强大,Java 也很优秀,选 Python”。 所以本文里,非常详细的讲述了用 Java 或 C++ 写算法时候的优劣势,你可以参考一下来判断自己喜欢用哪种语言写算法。...通常这样理解:Java 是跨平台的 C++,是一种更好的 C++(是不是有点拉仇恨的感觉)。...、float 和 double; 相应的,Java 也有 8 种基本数据类型,分别是:byte、short、int、long、float、double、char 和 boolean。...C++ 的函数有很多类型修饰,比如常见的 const,C++11 后新增了 final 和 override,但是 = 0 一直是一个比较奇怪的存在,它表明这个函数没有实现,需要在派生类实现,同时,也说明这个类是不能被实例化的

    2.4K10

    int 和 integer :装箱和拆箱的过程,会用到什么方法,你觉得这个会对性能有影响吗,原因是什么(百度一面)

    1、包装类型 Java语言是一个面向对象的语言,但是Java的基本数据类型却是不面向对象的,这在实际使用时存在很多的不便,为了解决这个不足,设计类时为每个基本数据类型设计了一个对应的类进行代表,这样八个和基本数据类型对应的类统称为包装类...比如,集合类,我们是无法将intdouble等类型放进去的。因为集合的容器要求元素是Object类型。...看一个简单的三目运算符的代码: boolean flag = true; Integer i = 0; int j = 1; int k = flag ?...(i2 == i3); true:i1的源码是i3,i2i3比较结果和i2i1比较结果相同,包装类和基本类型比较时自动拆箱 System.out.println(i2 == i4); true:包装类和基本类型比较时自动拆箱...,0原始类型,i为包装类型,两种不同类型为什么可以赋值呢,这就是因为java做了个自动装箱的操作;拆箱则相反。

    2.6K20

    金蝶一面:基本数据类型有哪些?包装类型的常量池技术了解么?

    你好,是 Guide。分享一道群友去金蝶面试遇到的 Java 基础面试真题: Java 的几种基本数据类型了解么?。 包装类型的常量池技术了解么? 自动装箱与拆箱了解吗?原理是什么?...Java 中有 8 种基本数据类型,分别为: 6 种数字类型: 4 种整数型:byte、short、int、long 2 种浮点型:float、double 1 种字符类型:char 1 种布尔型:boolean...逻辑上理解是占用 1 位,但是实际中会考虑计算机高效存储因素。 另外,Java 的每种基本类型所占存储空间的大小不会其他大多数语言那样随机器硬件架构的变化而变化。...Integer i1 = 33; Integer i2 = 33; System.out.println(i1 == i2);// 输出 true Float i11 = 333f; Float i22...Integer i1 = 40; Integer i2 = new Integer(40); System.out.println(i1==i2); Integer i1=40 这一行代码会发生装箱,

    48320
    领券