1.用於肯定句和疑問句中時,只同延續性動詞連用,兩者表達的意思相同
The old man has lived in the house for a long time (/for long). 老人在這所房子裡面已經住了很長時間了。
Will she be away for long (/for a long time)? 她會離開很久嗎?
2.但是,在否定問中,for long只能同延續性動詞連用;for a long time則可以同延續性或非延續性動詞連用,而且各自表達不同的意思。
He hasn't lived therefor long. 他在那裡住的時間不長。
He hasn't lived there for a long time. 很長時間以來他就不在那裡住了。(不住在那已經很久了)
She hasn't been backfor long.=She has been back not long. 她回來的時間不長。
She hasn't been backfor a long time. =For a long time she hasn't been back. 她很久沒有回來了。
I haven't received his letterfor a long time. 我很久沒有收到他的來信了。(receive為非延續性動詞,不可用for long)
She hasn't studied Englishfor long. 她學英語的時間不長。(study為延續性動詞,可用for long,也可用for a long time,但句意完全不同,本句為歧義句)