我当时正在家里做一个小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.