>> I tried using the sizeof operator as suggested above.
Don't bother, it won't work.
>> Pls tell me how can I get the number of elements stored in a dynamic array using them?
The only way to get the size of a dynamic array is to save the size when you allocate memory. The only way to get the size of an array parameter is to pass the size as another parameter:
// Get the size of a dynamic array
char *p = new char[10];
int sz = 10; // Save the size!
// Get the size of an array parameter
void foo(char array[], int size); // Pass the size!
>> I donot know the usage of std::vector or boost::array.
That's not a good excuse.

If you don't know the usage of a feature but you clearly need it, then it's time to learn. It's almost always better to use a container class than it is to use arrays anyway. Arrays are error prone while container classes work hard to protect you from those potential errors.
>> Is it?
String is not, unless you define it yourself, std::string is a class in the standard library.