王海倫 發問時間: 社會與文化語言 · 3 年前

關於英文現在進行完成式用法問題。?

1.You've been whistling for fifteen minutes.

2.I've already been waiting 45 minutes.

請問知識大大們,為什麼第二句的 45 minutes前不用加for呢?--I've already been waiting for 45 minutes.謝謝: )

2 個解答

評分
  • 3 年前
    最佳解答

    "for" is, among other usages, a preposition of time, expressing duration or a length of time.

    In English, this "for" can be omitted from the time phrase (e.g. for 45 minutes) in some cases and the remaining noun phrase (e.g. 45 minutes) can still be understood as the adverbial for expressing time duration.

    The omission happens after some "special" verbs such as "be", "live", "wait", "work", "last", "stay" and etc.

    These verbs have something in common:

    1. stative meaning, and

    2. with continuity

    The verb "whistle" is a dynamic verb without any stative meaning, so "for" can't be omitted.

    The verb "wait", when used to express duration, has stative meaning with continuity capability, so "for" can be omitted.

    I hope you understand!

  • 3 年前

    I've already been waiting 45 minutes.

    = I've already been waiting (for you for) 45 minutes.

    "for" is omitted to avoid the confusion with "waiting for" someone/something.

    It is a special case for "wait".

    • 王海倫
      Lv 4
      3 年前檢舉

      哈哈,感謝Prisoner的熱心答覆喲。

    • 登入以對解答發表意見
還有問題?馬上發問,尋求解答。