问答详情
源自:6-2 数组的遍历

for循环的问题?

    int i;

   for(i=0;i<length;i++){

       printf("%d\n",arr[i]);

   }

这里的int i不能直接写在for循环里吗?比如

   for(int i=0;i<length;i++){

       printf("%d\n",arr[i]);

   }

能不能这样写,help~ help~

提问者:寒子 2016-01-02 20:04

个回答

  • 留得枯荷听雨声lyx
    2016-03-08 19:56:14

    C语言中可以,你这个想法可以在c++里实现

  • 懒人很懒
    2016-02-24 20:23:32

    现在大部分的编译器里都是可以的,不过也有不可以的

    而且把int i;定义在for循环外和直接定义成for(int i=0;i<10;i++)是不一样的,定义在外面的时候是可以在整个函数里都使用的,但是定义在里面有的编译器可以在for循环外使用,有的在外边使用的时候还需要重新定义的

  • 卟懂伱
    2016-01-30 21:39:08

    java里可以,C却不行。。。。

  • onemoo
    2016-01-03 17:57:46

    老标准中不可以这样写。

    在C99标准中,增加了这个特性。准确地说,是将for作为独立的作用域。

  • 流浪_老
    2016-01-02 23:29:52

    C语言本身是不支持的  但是编译器是c++ c通用的  有些编译器是支持这样写的 有些不能