昨天看美剧,主人公想表示这里有过枪战,说的是therehasbeenashooting.为什么不说therewasashooting?如果这么说,
答:这就是现在完成时和一般过去时的区别所以.
现在完成时态是一个现在时态.事情是过去发生的,但说话者强调它对现在的影响和结果.(你看了结果,这里一片狼籍)
一般过去时只是就事论事地讲在过去发生过一件事情.不考虑它对现在的影响和结果.这时一般会指出过去的时间.会说:Therewasashootinghereyesterday.(你我可以一点都看不出来曾经发生过枪战)
另外,我想表达“他三年前得到了他高中以来一直想要的”能不能说hehasgotwhathehadbeenalwayswantedsincehighschool3yearsago
答:如果你想说一个过去的事实,不考虑它对现在影响,则用一般过去时:Threeyearsago,hefinallygotwhathehadwantedeversincehewenttohighschool.
如果想要表达,这事对现在的影响或结果,则要用两句话表达(比汉语多一句):
Hehasgotwhathehasalwayswanted.Hegotitthreeyearsago.