读书人

用vc 6.0编译 for循环失误时为什么呢

发布时间: 2013-03-12 11:19:35 作者: rapoo

用vc 6.0编译 for循环出错时为什么呢?
for( i = 1; i <= sequence_length; i++)
printf(" "); /* Output two spaces */
是没问题的。


for(int i = 1; i <= sequence_length; i++)

i前边加了 int 就出错了。 为什么呢?


如果要用 for(int i = 1; i <= sequence_length; i++) 该怎么办呢?


[解决办法]
在for语句前定义 int i;
[解决办法]
你用的是c语言,c语言不支持这样写的,c++支持
[解决办法]
把你的源文件的后缀名改为.cpp

引用:
for( i = 1; i <= sequence_length; i++)
printf(" "); /* Output two spaces */
是没问题的。


for(int i = 1; i <= sequence_length; i++)

i前边加了 int 就出错了。 为什么呢……

[解决办法]
for(int i = 1; i <= sequence_length; i++)

这个在只能在支持c99标准的编译器中编译才能通过。
vc6.0 是古董级别的,对c标准支持太差了。

参考以下链接的第8条:for语句内的变量声明 

http://bbs.bccn.net/thread-96214-1-1.html

C99中,程序员可以在for语句的初始化部分定义一个或多个变量,这些变量的作用域仅于本for语句所控制的循环体内。比如:

代码:

--------------------------------------------
for(int i=0; i<10; i++){
// do someting ...
}
--------------------------------------------

读书人网 >C语言

热点推荐