本文介绍了这code线转换为C的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有以下的code线:
I have the following code line:
for ( int i = index; i < al->size; ++i )
//i,index and size are integers.al is an arraylist
当我编译在C,我得到的错误:
When I compile this in C, I get the error:
'for' loop initial declarations are only allowed in C99 mode
林不知道如何解决这个问题。
Im not sure on how to fix this.
感谢您!
推荐答案
无论声明迭代器的循环之外:
Either declare the iterator outside of the loop:
int i;
for (i = index; i < al->size; ++i) {
do_foo();
}
如果你的编译器支持的话,编译针对C99或兼容标准:
or if your compiler supports it, compile against the c99 or compatible standard:
gcc -std=c99 your_code.c
(注意gnu89 / gnu90是默认的(如4.8,反正。))
(Note that gnu89/gnu90 is the default (as of 4.8, anyway.))
这篇关于这code线转换为C的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!