南京邮电大学吧 关注:328,505贴子:11,142,672
  • 21回复贴,共1

用VS2013编C++一道程序为什么局部变量没有输出

只看楼主收藏回复



IP属地:上海1楼2014-03-28 12:47回复
    而另一个软件可以


    IP属地:上海2楼2014-03-28 12:48
    回复
      2025-05-23 17:51:49
      广告
      你用win8?


      IP属地:上海3楼2014-03-28 12:52
      收起回复
        没人


        IP属地:上海4楼2014-03-28 13:08
        回复
          顶一下,别沉了……


          来自Android客户端5楼2014-03-28 13:22
          回复
            不懂帮顶


            IP属地:山西来自iPhone客户端6楼2014-03-28 13:30
            回复
              爪机看不清


              IP属地:江苏来自Android客户端7楼2014-03-28 19:13
              回复
                还是vs2012


                来自Android客户端8楼2014-03-29 09:44
                回复
                  2025-05-23 17:45:49
                  广告
                  勇气可嘉


                  IP属地:海南来自Android客户端9楼2014-03-29 09:53
                  回复
                    VC和GCC的区别很大的


                    IP属地:江苏来自Android客户端10楼2014-03-29 09:54
                    回复
                      我忘记学叔同学的ID了 @rayteng


                      来自Android客户端11楼2014-03-29 09:54
                      收起回复
                        爪机看不清楚


                        IP属地:江苏来自Android客户端13楼2014-03-29 10:48
                        回复
                          for循环结束后 循环里定义的i的生命周期就已经结束了 所以会输出123。你后面那个编译器版本比较老,它把for循环中的i当成整体的(大括号范围内的)局部变量,比如说VC6.0就是这样。在VS中VC++的编译器作了很大的改动以支持托管的C++,当然还有其他的一些改动。VC++6的很多特性并不是和C++标准一致的。


                          IP属地:江苏14楼2014-03-29 11:13
                          收起回复
                            问过宿舍大神,两个 i 的作用域不同,如果在for循环和循坏外都声明的话,在循环外按照循坏外的i 的值进行处理,在循环内按照循环内的处理。


                            IP属地:北京15楼2014-03-29 11:28
                            收起回复