I have a char
array and I need to get the address of each element.
cout << &charArray
gives me a valid address, However if I try to get the address of a specific element, it spits out garbage:
cout << &charArray[0]
std::cout << (void*) &charArray[0];
There's an overload of operator<<
for char*
, that tries to print the nul-terminated string that it thinks your pointer points to the first character of. But not all char arrays are nul-terminated strings, hence the garbage.
You can do something like
&charArray + index * sizeof(char)
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With