C# Revisiting the concept of arrays - Strings vs. Char Arrays in C# Review the following code: string hello1 = \"hello!\" ; char [] hello2 = new char [10]{ \'h\' , \'e\' , \'l\' , \'l\' , \'o\' , \'!\' , \'\\0\' , \'\\0\' , \'\\0\' , \'\\0\' }; hello1 = \"Hi!\" ; hello2[1] = \'h\' ; hello2[2] = \'i\' ; hello2[3] = \'!\' ; int len1 = hello1.Length; int len2 = hello2.Length; Speak to the ramifications of this code and how strings are handled vs. how arrays of char are handled - declared, initialized, modified. What does this mean for how you use these particular language constructs? Solution In the code, hello2 will be containing: {\'h\',\'h\',\'i\',\'!\',\'o\',\'!\',\'\\0\',\'\\0\',\'\\0\',\'\\0\'}; Because we are assigning the character values to the individual characters of the array. hello2[3] =\'!\'; After this statement, if we put: hello2[4] =\'\\0\'; then hello2 will be: {\'h\' \'h\', \'i\', \'!\', \'\\0\'} Because \'\\0\' marks the end of the string. .