c 与c++可以认为是同系的语言,但也有许多不同,c++比c功能多,即使相同功能部分,也有许多不同,不说别的,就编译方面来讲,标准也不一样,编译器在编译c++代码与编译c代码执行的是两套标准,编译器可能就是两个,有人说c++编译器内置了c编译器,这可能是真的,现在再说楼主的问题,从编译错误信息来看,楼主编译的是c文件,那么编译器执行的是c标准,关于声明语句,有这样的规范,声明语句应该放在块的头部,在所有执行语句之前,也就是说,声明语句不能放在执行语句中间,而对于c++来说,就没有这样的限制,所以,楼主有两种方法改正,一是把声明语句放在所有执行语句之前,另外就是把c文件改为c++文件,扩展名改为.CPP