#include <iostream>
int main() {
const char* s = nullptr;
{
s = "inner";
}
std::cout << s << std::endl;
return 0;
}
Где находится "internal", хранящийся в памяти?Const C-String на стеке?
Valgrind не жалуется. Сохраняется ли в сегменте данных?
Спасибо.
Скорее всего, родата или эквивалент, но такая вещь * очень * зависит от платформы. Стандарт C++ заботится только о том, что он имеет статическую продолжительность хранения. Какую платформу вы используете? – Wintermute
@Bregalad это вопрос на C++. Также есть случаи, когда массив не распадается на указатель на обоих языках, например, когда он является операндом '&' или 'sizeof'. –
Только указатель '' 'находится в стеке. Строка, указывающая на «внутреннюю», может быть где угодно. – Galik