0

I waited for him about 1 hour.

I told him:

"I am waiting for you so long."

"I am waiting for you for a long time."

Do they sound grammatically correct?

4

These sentences are grammatically incorrect as they're in the wrong tense. I am waiting for you is in the present tense. If you want to reference a length of time you've been in the 'waiting' state, you want to modify the sentence to use present perfect tense, as the length of time you've been waiting has already occurred. Correcting your sample sentences:

I have been waiting for you for so long.

I have been waiting for you for a long time.

| improve this answer | |
2

Both the sentences are ungramatical.

When you talk about how long something has been happening, you use the present perfect continuous, not the present continuous. For examples:

I have been playing for two hours.

I have been studying for a long time.

So if you are still waiting for him, you should say:

I have been waiting for you so long.

I have been waiting for you for a long time.

| improve this answer | |

Not the answer you're looking for? Browse other questions tagged or ask your own question.