C VS2010中“针对每个”循环的编译错误

我当时正在家里做一个小C项目,我把它带到学校给我的老师看.在家中我有Visual Studio 2012,而学校计算机上有Visual Studio2010.在我的代码中,我在家中有一个for循环,如下所示,该循环已编译:

for(char c : myStr){...}

但是,当我在学校的计算机上尝试该程序时,它没有编译,最终我不得不这样做:

for each(char c in myStr){...}

为什么会这样呢?

解决方法:

for(char c:myStr){…}语法是C 11的新功能,因此使用较旧版本的C的任何内容都不会使用该语法进行编译.

在C 11之前,在算法头中定义了for_each.

上一篇:c-如何找出哪个嵌套的for循环更好?


下一篇:python-在循环末尾检查是否需要再次运行