我相信 Array1 和 Array2 的声明方式不同,但它们都具有相同的类型 - char。Array1 和 Array2 似乎都包含相同的确切值和相同数量的值。我不明白为什么它们的长度彼此不同。有人可以解释为什么吗?
char Array1[ ] = { 1, 2, 3, 4, 5 };
char Array2[ ] = "\x01\x02\x03\x04\x05";
std::cout << "Length of Array1 = " << sizeof( Array1 )/sizeof( *Array1 )
<< std::endl
<< "Length of Array2 = " << sizeof( Array2 )/sizeof( *Array2 );
输出:
Length of Array1 = 5
Length of Array2 = 6