百科问答小站 logo
百科问答小站 font logo



C语言中for语句的赋初值用int i=1和i=1有什么区别? 第1页

  

user avatar   pansz 网友的相关建议: 
      

区别在于后者的i结束循环仍然可用。

从代码清晰的角度来讲,一个变量如果不用了就应该消失。如果不需要知道循环结束时i的值 ,就应该写在内部。

只有一个循环的时候区别不大,有多个循环的时候区别就大了。因为后边的循环不声明i,等于是依赖外部环境的变量。而这会使得代码难以移植。

所以,只要有可能,应该尽量使用前一种写法。




  

相关话题

  为什么8bit限制是-128到127而不是-127到128? 
  C++ 的 switch 为什么不自动加 break? 
  C++ 父类对象赋值给子类对象是未定义行为么? 
  为什么 Go 和 Rust 常提供静态编译好的 Linux 程序,而 C 不行? 
  操作系统里面经常说的一个功能用「软件实现」还是用「硬件实现」,其本质区别是什么? 
  请问,此题使用switch语句编写是否会比if更高效?若想用switch又该如何编写呢? 
  怎么在事先未知将要输入数字的个数的情况下,将其全部赋值给一个数组? 
  写C with class很丢人么? 
  教授说没有写过一千行以上代码的程序就别想上大公司,这种说法对吗? 
  如果有两颗药丸,一颗吃了让你写代码100%不出错,另一颗吃了能让你100%发现并修改bug,选哪颗? 

前一个讨论
都说己所不欲勿施于人,那我帮别人(亲戚/同学)装系统时要装Linux还是我不喜欢用的Windows?
下一个讨论
微软为什么要做 WSL 而不是 LSW?





© 2025-06-20 - tinynew.org. All Rights Reserved.
© 2025-06-20 - tinynew.org. 保留所有权利