0
  1. Have you called me last night?
  2. Did you call me last night?

What's the difference between these sentences?

  • The first sentence is ungrammatical. A present perfect does not admit a past time adjunct. – Mohd Zulkanien Sarbini Dec 23 '18 at 00:43
  • if you want to say that if she/he call you last night I think the second in correct , the first nope I think is my opinion is more natural pst I am not native – simon Dec 23 '18 at 05:25
  • @simon Please feel free to leave an actual answer if you're sure it's correct. Avoid leaving answers in comments as comments aren't meant to stay forever, and because people might not even read the answers due to your comment's placement (above all the answers). –  Dec 23 '18 at 11:17
  • shoul I make a answer then? – simon Dec 24 '18 at 05:17

1 Answers1

0

The only possible sentence out of the two is this one:

Did you call me last night?

The sentence

UNGRAMMATICALHave you called me last night?

is ungrammatical because last night makes explicit that the situation finished at some point in the past – in other words, that we're concerned with a finished time – which the present perfect isn't normally used to refer to.

Instead, use the present perfect to refer to a stretch of time which hasn't finished at the present moment; note that this doesn't preclude you from using time adjuncts such as last night if you ensure the present perfect refers to a period of time until now, which you can do, for instance, by combining it with since, as shown in this sentence:

I haven't seen him since last night.


For more information about the perfect tense, read our canonical post.