i have been here for a long time

问题描述:

i have been here for a long time
这句话对吗?i've been here for a long time 如果是错的麻烦说明大家说明下好吗?我一直在困扰haven been和have been done

1.这句话是对的.
2.have been 是be 的现在完成时态;
have done 是do 的现在完成时态;
have been done 是do 的现在完成时态的被动语态形式.
3.I have been here for a long time.
其中的have been here 还原其实就是be here,只不过用了完成时.也就是说,当一般现在时用be 的时候,完成时就用have been.而be 常与形容词、名词、介词短语等连用.如:
I have been in this city for a long time.
He has been a college student for three years.
4.have done 其实是所有完成时态的一个公式.
5.have been done 是被动语态:.已经被做了
He has been sent to the hospital.他已经被送到医院.
The classroom has been cleaned.