`
javasogo
  • 浏览: 1844170 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

C中的 i++,++i

 
阅读更多
今天聊天时有人提出这样一个问题,感觉比较好玩,记在这里
在win tc 2.0下result:9, 11, 9, 10;
在vc 6.0 debug模式下:9, 10, 9, 10;
在vc 6.0 release模式下:9, 11, 9, 10;
感觉debug模式下有些奇怪.
分享到:
评论

相关推荐

    浅谈c i++与java i++的区别

    在c语言中,编译器可能会对i++进行优化,例如,将i++替换为i=i+1,这可能会影响输出结果。在java语言中,虚拟机也可能会对i++进行优化,例如,将i++替换为i=i+1,这也可能会影响输出结果。 c语言和java语言在使用i+...

    C语言中++i与i++的区别.docx

    在C语言中,`++i` 和 `i++` 是两种常见的自增操作符,它们在编程中的作用是增加变量的值。虽然它们看似相似,但在某些特定情况下,两者的行为是有区别的,这也是C语言初学者经常感到困惑的地方。本文将深入探讨这两...

    关于i++和++i以及左值,右值

    而i++和++i是C++和C语言中用于对变量进行自增操作的两种运算符。它们虽只有一字之差,但含义和用法却存在显著差异。具体来说,i++是一个后缀自增运算符,它的行为是先返回变量i的当前值,然后再将变量i的值加1。因此...

    关于C语言中++运算的讨论

    根据C语言的运算规则,`++i`在`+`运算符之前发生,但是括号中的运算顺序由编译器决定,这导致了不同编译器可能产生不同的结果。 在TC 2.0下,编译器按照从左到右的顺序处理`++`运算,每次遇到`++`都会立即增加`i`,...

    ++i,i++,--i,i--终结

    在C/C++编程语言中,“++i, i++, --i, i--”是一组非常重要的自增自减运算符。这些运算符主要用于在程序中修改变量的值。了解这些运算符的工作原理对于编写高效、清晰的代码至关重要。 - **++i (前缀自增)**:首先...

    C语言中++和--运算的一些问题

    - 例如: 在表达式 `-i++` 中, 先执行 `i++`, 然后再取负。 3. **多个运算符出现在同一表达式中**: - 当自加/自减运算符在同一表达式中多次出现时,顺序至关重要。 - 例如: `i+++j` 被解释为 `(i++) + j` 而不是 ...

    java中对 i=i++ 的 解释(反编译出java虚拟机指令的)

    在Java编程语言中,`i=i++`是一个典型的自增表达式,它的行为可能会引起一些混淆,特别是当对比于其他编程语言如C或C++时。这个表达式在Java中的行为可以通过反编译成Java虚拟机(JVM)指令来理解。 首先,让我们...

    如何理解i=i++和i=++i.docx

    在 C、C++、Java 这类编程语言中,表达式“i = i++”和“i = ++i”表面上看似都执行了相同的增加操作,但其内部的工作机制和结果却大相径庭。首先,我们需要明白“i++”和“++i”在运算中的区别。“i++”是后缀自增...

    为什么(i++)不能做左值,而(++i)可以

    在C/C++中,后缀递增运算符(i++)和前缀递增运算符(++i)都用于将变量增加1,但它们的操作和结果在某些情况下有本质的区别。前缀递增运算符++i先增加变量的值,然后返回新的值。后缀递增运算符i++先返回变量当前的值,...

    ++i和i++的区别 c/c++开发中

    在C/C++语言中,自增运算符是使用频率非常高的一个操作符,它有两种形式:前缀自增(++i)和后缀自增(i++)。这两种形式虽然在表面上看似相同,都是将变量的值增加1,但在实际的程序执行过程中,它们却有着本质上的...

    词法分析一个词法分析的小程序,实现i+i*i的分析

    一个词法分析的小程序, 编写一个小程序, 实现i+i*i的分析。

    i++循环与i-–循环的执行效率(递增与递减效率)

    标题和描述中提到的知识点主要围绕着在编程中常见的递增操作(i++)和递减操作(i--)的执行效率问题进行讨论。在不同的上下文中,这两种操作的效率可能会有所不同,这通常与使用的编程语言、编译器优化以及处理器的指令...

    ++i和i++d的区别.docx

    在C语言和许多其他类似的编程语言中,递增操作符有两种形式,即前缀递增(++i)和后缀递增(i++)。这两种操作符的共同作用是将变量的值增加1,但它们在变量值更新和参与运算的时序上存在差异。 前缀递增(++i)...

    编程语言中++i与i++运算符的区别及性能分析

    内容概要:本文详细介绍了前置自增(++i)和后置自增(i++)运算符的区别及其应用场景,涵盖C/C++、Java、JavaScript等多门语言。重点讨论了两者在返回值、执行顺序以及在复杂表达式中的差异,并探讨了编译器优化的...

    c语言++放在前面和后面的区别分析

    i被赋值0,i++(后++)并没有输出1。   现在i被赋值0,++i,也就是前++后输出了1。   i被赋值0,前++ 的话,就是自身先加1 就自身赋值变成1 ,后面的i的值都是1了。   i被赋值0,先是后++,后++意思是 自己先被...

    c语言补习作业+代码.pdf

    i++) { if(i % 2 != 0) { // 检查是否为奇数 sum += i; // 加入奇数和 } } printf("100以内奇数和为:%d\n", sum); ``` 2. **水仙花数的打印** 水仙花数是满足其各个位上的数字立方和等于该数本身的三位数...

    理解++i与i++的区别.txt

    在编程中,特别是C/C++等语言中,“++i”与“i++”都是自增运算符,其功能是将变量的值增加1。尽管它们的目的相同,但使用的时机不同会导致代码行为和性能的差异。在C/C++中,自增运算符有两种形式:前缀自增(++i)...

    C语言开发 B+树 数据文件索引程序库

    在C语言中实现B+树索引程序库,需要考虑以下关键点: - **内存管理**:C语言没有自动垃圾回收机制,程序员需要手动管理内存。在构建B+树时,需要注意节点的动态分配和释放,避免内存泄漏。 - **数据结构设计**:...

    深入解析C/C++/Java/JS中的i++与++i递增操作

    内容概要:详细讲解了在C、C++、Java、JavaScript等多种编程语言里,前缀递增(++i)与后缀递增(i++)的具体区别及其使用时机。文章指出两者虽然最终都使变量增加了1,但在复合表达式中因为执行顺序的不同会产生...

    [C 語言] i++ 和 ++i 是怎麼回事

    [C 語言] i++ 和 ++i 是怎麼回事

Global site tag (gtag.js) - Google Analytics