This is what I understood about difference between strings and array of characters so far and unicode(U+0000 to U+FFFF).
1.Unicode of BMP is combination of 0's and 1's and gives 65,536(2^16 or 16^4) characters.
2.character array can only contain this 65,536 BMP unicode characters.
3.String can have things other than unicode characters in BMP(65,536 characters).
please correct me if I am wrong.