Depending on where you were brought up, the globe is divided into five or six contintents:
Africa, America, Europe, Asia, Australia -- that's the mid-European view.
Africa, North America, South America, Europe, Asia, Australia -- that's the North American view.
Each of these continents may have regions that could be considered a subcontinent, i.e. a part of the land mass that makes up the continent. Assuming that "the subcontinent" refers only to India and Sri Lanka is assuming that your audience knows that you refer to these countries. If you mention "the subcontinent" in a conversation in Africa or Europe, people may not make the connection to India/Sri Lanka at all.
Also, the term "Asian" may mean different things in different countries. Generally speaking, "Asian" would be any person from the continent of Asia, which includes China, Japan, Vietnam, Korea, India, Pakistan, Mongolia and many more countries. Personally, I feel that "Asian" is too broad a brush to apply, since there are a lot of differences between the people and the cultures of the countries on the Asian continent.
I've often come across the term "Asian" to refer specifically to people from India/Pakistan/Sri Lanka, whereas people from more Eastern regions of Asia are instead referred to by country of origin, e.g. Chinese, Japanese.
This is the usage I notice in New Zealand. It may well be different in other countries.